در این مطلب، ویدئو کوروتین ها در پایتون (ناهمگام/انتظار) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:05:58
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,060 –> 00:00:02,580
سلام بچه ها به دومین ویدیوی
2
00:00:02,580 –> 00:00:04,650
سری من در مورد برنامه نویسی همزمان در
3
00:00:04,650 –> 00:00:06,810
پایتون خوش آمدید، بنابراین در ویدیوی اول سعی کردیم
4
00:00:06,810 –> 00:00:08,280
بفهمیم برنامه نویسی همزمان
5
00:00:08,280 –> 00:00:10,469
واقعا چیست و در این ویدیو سعی نمی
6
00:00:10,469 –> 00:00:12,120
کنیم یکی از اساسی ترین
7
00:00:12,120 –> 00:00:13,980
مؤلفه های
8
00:00:13,980 –> 00:00:16,379
برنامه نویسی همزمان را بفهمیم. که روال های اصلی است، بنابراین
9
00:00:16,379 –> 00:00:20,210
بدون هیچ تاخیری بیایید شروع کنیم،
10
00:00:21,690 –> 00:00:25,030
بنابراین به عبارت بسیار ساده، یک روال
11
00:00:25,030 –> 00:00:28,810
اصلی یک تابع ساده است که می تواند اجرای خود را متوقف کرده و
12
00:00:28,810 –> 00:00:31,570
از سر بگیرد، بنابراین اساساً
13
00:00:31,570 –> 00:00:34,090
یک تابع با قدرت های فوق العاده است که
14
00:00:34,090 –> 00:00:36,040
می تواند متوقف شود و اجرای خود را از سر بگیرد.
15
00:00:36,040 –> 00:00:38,950
در هر مرحله در طول
16
00:00:38,950 –> 00:00:40,870
چرخه زندگی کامل آن خوب است،
17
00:00:40,870 –> 00:00:42,640
بنابراین اجازه دهید سعی کنیم آن را با یک مثال درک کنیم،
18
00:00:42,640 –> 00:00:44,260
بگذارید بگوییم که شما سه
19
00:00:44,260 –> 00:00:47,410
تابع در اینجا کد تابع a b یا c دارید یا
20
00:00:47,410 –> 00:00:49,150
بهتر است بگوییم که آن را روال های مشترک بنامیم، بنابراین شما
21
00:00:49,150 –> 00:00:51,129
یک co-نوشته کرده اید. روال b و
22
00:00:51,129 –> 00:00:53,260
روال مشترک c، بنابراین اکنون چه کاری انجام می دهید این است
23
00:00:53,260 –> 00:00:55,540
که روال اصلی a را
24
00:00:55,540 –> 00:00:57,310
شروع کنید تا روال اصلی a را شروع کنید و پس از
25
00:00:57,310 –> 00:01:00,040
مدتی تصمیم بگیرید که
26
00:01:00,040 –> 00:01:01,750
اجرای برنامه اصلی خود را متوقف کنید. ght
27
00:01:01,750 –> 00:01:04,569
اینجا و سپس اجرای B را شروع میکنید،
28
00:01:04,569 –> 00:01:07,030
حالا B در حال اجرا در مرحلهای است،
29
00:01:07,030 –> 00:01:09,820
B را متوقف میکنید و اکنون C در حال اجرا است در
30
00:01:09,820 –> 00:01:11,830
مرحلهای C را متوقف میکنید و سپس دوباره
31
00:01:11,830 –> 00:01:14,110
اجرای a را شروع میکنید، سپس دوباره a را متوقف میکنید،
32
00:01:14,110 –> 00:01:16,780
سپس B در حال اجرا است و سپس دوباره از
33
00:01:16,780 –> 00:01:19,119
versi head لپتاپ C دوباره شروع به اجرای
34
00:01:19,119 –> 00:01:22,270
آن میکند، بنابراین به این ترتیب روالهای مشترک کار میکنند،
35
00:01:22,270 –> 00:01:25,360
بنابراین گوروتینها میتوانند توقف کرده و اجرای خود را از سر بگیرند
36
00:01:25,360 –> 00:01:27,789
، و روتین Vanko وقتی
37
00:01:27,789 –> 00:01:30,220
خودش را مکث میکند، میتواند یک روال اصلی دیگر را فراخوانی کند
38
00:01:30,220 –> 00:01:33,220
و به این ترتیب در این
39
00:01:33,220 –> 00:01:35,050
روالهای تقلبی یا روتین اجرا میشود. اما اکنون این
40
00:01:35,050 –> 00:01:38,289
سوال پیش میآید که چگونه میتوانم
41
00:01:38,289 –> 00:01:41,050
روالهای اصلی را در پایتون درست کنم، بنابراین برای
42
00:01:41,050 –> 00:01:42,610
ایجاد یک روال اصلی، در واقع
43
00:01:42,610 –> 00:01:45,100
باید تابعی داشته باشید که آن را به یک روال اصلی تبدیل کنید،
44
00:01:45,100 –> 00:01:48,039
به عنوان مثال، تنها کاری که
45
00:01:48,039 –> 00:01:49,720
باید انجام دهید این است که باید
46
00:01:49,720 –> 00:01:54,130
فقط یک کلمه کلیدی S Inc قرار دهید async یک
47
00:01:54,130 –> 00:01:56,679
کلمه کلیدی پایتون است که می توانید از آن استفاده کنید و به محض
48
00:01:56,679 –> 00:01:58,599
اینکه async را قبل از تعریف
49
00:01:58,599 –> 00:02:01,420
هر تابعی در پایتون قرار دهید تبدیل به یک روال اصلی می شود،
50
00:02:01,420 –> 00:02:02,860
بنابراین اجازه دهید در اینجا مثالی بزنم
51
00:02:02,860 –> 00:02:07,780
، فرض کنید من یک تخصیص همگام سازی انجام می دهم. اجازه
52
00:02:07,780 –> 00:02:09,038
دهید ابتدا با یک تابع بسیار ساده برویم،
53
00:02:09,038 –> 00:02:11,980
اجازه دهید من آن را تابعی بنام main
54
00:02:11,980 –> 00:02:16,330
که در آن چاپ می کنیم سلام، بسیار
55
00:02:16,330 –> 00:02:19,090
ساده است و حالا کاری که من انجام می دهم این است که
56
00:02:19,090 –> 00:02:22,720
من به سادگی انجام
57
00:02:22,720 –> 00:02:24,580
می دهم. اکنون سلام می کنم،
58
00:02:24,580 –> 00:02:26,530
موضوع این است که می خواهم آن را به یک
59
00:02:26,530 –> 00:02:29,080
برنامه معمولی اصلی تبدیل کنم یا عملکردی روتین
60
00:02:29,080 –> 00:02:31,510
با قدرت های ویژه ای که به آن اجازه می
61
00:02:31,510 –> 00:02:33,580
دهد در هر مرحله از چرخه زندگی خود متوقف شود یا از سر گرفته شود،
62
00:02:33,580 –> 00:02:34,910
63
00:02:34,910 –> 00:02:37,220
بنابراین اکنون اجازه دهید من فقط
64
00:02:37,220 –> 00:02:39,200
یک سینک بگذارم. چه اتفاقی میافتد این است که اجازه دهید
65
00:02:39,200 –> 00:02:42,800
ببینیم اگر با mean تماس گرفتم،
66
00:02:42,800 –> 00:02:44,330
ببینیم که در واقع چیزی
67
00:02:44,330 –> 00:02:46,970
را به من برگرداند و یک شیء معمولی را به من برگرداند، بنابراین
68
00:02:46,970 –> 00:02:48,410
اکنون چیزی که در اینجا باید فهمید این است که به
69
00:02:48,410 –> 00:02:50,330
محض اینکه یک سینک را قبل از تعریف تابع
70
00:02:50,330 –> 00:02:50,990
71
00:02:50,990 –> 00:02:53,510
قرار دهید، تبدیل به یک میشود. روال اصلی و هنگامی که شما
72
00:02:53,510 –> 00:02:56,330
آن روال اصلی را فراخوانی می کنید، یک شی معمولی اصلی را برمی گرداند،
73
00:02:56,330 –> 00:02:58,910
اکنون یک شی معمولی اصلی را
74
00:02:58,910 —