در این مطلب، ویدئو فرآیند ارتباط با استفاده از لوله ها | برنامه نویسی موازی در پایتون (بخش نهم) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:09:03
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,410 –> 00:00:02,939
سلام بچه ها به یک ویدیوی دیگر از
2
00:00:02,939 –> 00:00:04,500
سری من در مورد برنامه نویسی موازی در
3
00:00:04,500 –> 00:00:06,810
پایتون خوش آمدید، بنابراین در آخرین ویدیو دیدیم که چگونه
4
00:00:06,810 –> 00:00:09,450
می توانیم از مفهوم صف
5
00:00:09,450 –> 00:00:12,900
برای دستیابی به ارتباطات فرآیندی در حین
6
00:00:12,900 –> 00:00:15,690
پردازش چندگانه در پایتون استفاده کنیم، حال اجازه
7
00:00:15,690 –> 00:00:17,279
دهید به روش دوم برسیم که لوله است
8
00:00:17,279 –> 00:00:19,050
اما قبل از بحث در مورد لوله، اجازه دهید
9
00:00:19,050 –> 00:00:20,609
چند تفاوت مهم بین لوله
10
00:00:20,609 –> 00:00:22,289
و صف را ببینیم، بنابراین اولین و مهمترین
11
00:00:22,289 –> 00:00:24,420
تفاوت این است که یک لوله می تواند تنها
12
00:00:24,420 –> 00:00:27,090
دو نقطه پایانی داشته باشد، اما شما می توانید
13
00:00:27,090 –> 00:00:29,939
چندین تولید کننده و مصرف کننده داشته باشید، بنابراین
14
00:00:29,939 –> 00:00:32,610
به سادگی به این معنی است که وقتی ایجاد می کنید یک لوله
15
00:00:32,610 –> 00:00:36,300
شما دو اتصال دریافت می کنید، بنابراین اتصال
16
00:00:36,300 –> 00:00:39,840
یک و اتصال دو توسط دو
17
00:00:39,840 –> 00:00:42,690
فرآیند مختلف استفاده می شود و می
18
00:00:42,690 –> 00:00:45,239
توانند پیام ها را به درستی به یکدیگر ارسال یا دریافت کنند، اما
19
00:00:45,239 –> 00:00:48,690
در مورد صف، هر فرآیندی می تواند
20
00:00:48,690 –> 00:00:51,300
Q dot ket را برای دریافت پیام از
21
00:00:51,300 –> 00:00:53,820
صف و هر کدام انجام دهد. فرآیند دیگر میتواند
22
00:00:53,820 –> 00:00:55,920
برای قرار دادن هر پیام جدید در صف Q dot قرار دهد،
23
00:00:55,920 –> 00:00:57,989
بنابراین میتوانید زمانی
24
00:00:57,989 –> 00:01:00,390
که چندین فرآیند
25
00:01:00,390 –> 00:01:01,980
با یکدیگر در ارتباط هستند، اما میتوانید از یک لوله استفاده کنید، از یک صف استفاده کنید.
26
00:01:01,980 –> 00:01:04,140
وقتی شما فقط دو فرآیند دارید اما
27
00:01:04,140 –> 00:01:06,810
هنوز چرا من از لوله استفاده میکنم بنابراین اساساً
28
00:01:06,810 –> 00:01:10,170
لوله در واقع
29
00:01:10,170 –> 00:01:12,240
عملکرد بسیار سریعتری
30
00:01:12,240 –> 00:01:16,650
را در مقایسه با Q به شما ارائه میدهد و Q در
31
00:01:16,650 –> 00:01:19,350
واقع روی بالای لوله ساخته میشود، بنابراین
32
00:01:19,350 –> 00:01:23,009
لوله اساسیترین پیادهسازی
33
00:01:23,009 –> 00:01:25,439
برای صف ارتباطات فرآیندی
34
00:01:25,439 –> 00:01:28,080
در بالای لوله ساخته
35
00:01:28,080 –> 00:01:29,939
می شود و ارتباط بین
36
00:01:29,939 –> 00:01:32,729
چند تولید کننده و مصرف کننده را پشتیبانی می کند
37
00:01:32,729 –> 00:01:35,250
زیرا به گونه ای پیاده سازی شده است
38
00:01:35,250 –> 00:01:37,860
که بدون ایجاد
39
00:01:37,860 –> 00:01:39,960
هیچ گونه ناهماهنگی در
40
00:01:39,960 –> 00:01:43,380
اجرای آن امکان پذیر است، بنابراین این یک مفهوم است
41
00:01:43,380 –> 00:01:45,619
و حالا بیایید به اینکه چگونه
42
00:01:45,619 –> 00:01:48,810
لوله ها را درست پیاده سازی کنیم، بیایید ببینیم چگونه
43
00:01:48,810 –> 00:01:51,780
می توانیم لوله ها را پیاده سازی کنیم، بنابراین
44
00:01:51,780 –> 00:01:53,939
من آنها را مثال
45
00:01:53,939 –> 00:01:58,759
می زنم که اجازه دهید بگوییم من پیام هایی مانند سلام
46
00:02:00,649 –> 00:02:06,549
سلام دارم، بنابراین من این پیام ها را اینجا
47
00:02:06,549 –> 00:02:09,560
دارم و در نهایت من یک پیام en D داشته باشید که به این
48
00:02:09,560 –> 00:02:12,190
معنی است که اجازه دهید اتصال را
49
00:02:12,190 –> 00:02:14,930
ببندیم اجازه دهید لوله را ببندیم خوب بنابراین من
50
00:02:14,930 –> 00:02:19,400
این پیام ها را دارم و اکنون تابعی
51
00:02:19,400 –> 00:02:25,549
به نام def send message دارم که پیام می فرستد
52
00:02:25,549 –> 00:02:27,799
فرض کنید که
53
00:02:27,799 –> 00:02:29,900
یک شی اتصال خواهد داشت
54
00:02:29,900 –> 00:02:34,540
و پیام می فرستد بنابراین برای پیام در
55
00:02:34,540 –> 00:02:39,440
پیام ها نقطه اتصال پیام ارسال می کند
56
00:02:39,440 –> 00:02:41,959
که در نهایت ما نقطه اتصال را نیز انجام می
57
00:02:41,959 –> 00:02:44,540
دهیم تا آن چیزی باشد
58
00:02:44,540 –> 00:02:46,519
و در اینجا تابع دیگری به نام
59
00:02:46,519 –> 00:02:50,390
پیام دریافت شده است. که در آن ما فقط
60
00:02:50,390 –> 00:02:53,349
خود را وصل نمی کنیم، فقط به یک اتصال نیاز داریم، بنابراین
61
00:02:53,349 –> 00:02:57,079
یک حلقه بی نهایت قرار می دهیم، بنابراین
62
00:02:57,079 –> 00:03:04,760
در حالی که یکی از آنها چه کار می کنیم، پیام
63
00:03:04,760 –> 00:03:09,410
برابر با نقطه اتصال است، بنابراین
64
00:03:09,410 –> 00:03:12,500
این یک نوع پیام مسدود کننده است، یک نوع
65
00:03:12,500 –> 00:03:15,079
مسدود کردن بیانیه ای که منتظر می ماند
66
00:03:15,079 –> 00:03:17,090
تا پیامی در
67
00:03:17,090 –> 00:03:19,310
اتصال در لوله دریافت شود و تنها پس از
68
00:03:19,310 –> 00:03:21,709
آن به دستور بعدی می رویم، فرض کنید اگر
69
00:03:21,709 –> 00:03:27,109
پیام پایان یافته است، از این
70
00:03:27,109 –> 00:03:30,109
حلقه بی نهایت خارج می شویم در غیر این صورت پیام را چاپ می کنیم
71
00:03:30,109 –> 00:03:34,190
خوب است، بنابراین این نسخه تبلیغی است
72
00:03:34,190 –> 00:03:35,810
دو اتصالی که میخواهیم آنها را
73
00:03:35,810 –> 00:03:38,030
حفظ کنیم، اولین اتصالی که در حال
74
00:03:38,030 –> 00:03:39,680
حاضر داشتیم، فقط برای ارسال
75
00:03:39,680 –> 00:03:41,030
پیامها از آن استفاده میکنیم، شما میتوانید از آن برای انجام چندین کار استفاده کنید
76
00:03:41,030 –> 00:03:43,400
و در اینجا یک
77
00:03:43,400 –> 00:03:44,870
اتصال دیگر فقط برای
78
00:03:44,870 –> 00:03:46,220
دریافت پیامها فقط برای
79
00:03:46,220 –> 00:03:47,989
سادگی استفاده میکنند، زیرا میخواهیم ببینیم که
80
00:03:47,989 –> 00:03:51,680
واقعاً چگونه اعمال را پیادهسازی میکنیم، بنابراین اکنون
81
00:03:51,680 –> 00:03:54,680
میتوانیم آن را اتصال والد و اتصال فرزند
82
00:03:54,680 –> 00:03:56,829
بنامیم، در واقع هر دو اتصال
83
00:03:56,829 –> 00:04:00,769
در یک سطح هستند، هیچکدام مانند والدین
84
00:04:00,769 –> 00:04:02,959
یا فرزندی نیستند که آنها یکسان هستند. سلسله مراتب اما
85
00:04:02,959 –> 00:04:05,480
هنوز هم فقط برای نامگذاری آنها و نامیدن
86
00:04:05,480 –> 00:04:07,310
آنها اتصال پین و اتصال فرزند
87
00:04:07,310 –> 00:04:08,739
و من می گویم
88
00:04:08,739 –> 00:04:13,189
لوله نقطه ای چند پردازشی، بنابراین
89
00:04:13,189 –> 00:04:14,270
نقطه پی چند پردازشی
90
00:04:14,270 –> 00:04:16,940
من را به اشیاء
91
00:04:16,940 –> 00:04:19,550
اتصالی که توسط یک لوله به هم متصل هستند برمی گرداند.
92
00:04:19,550 –> 00:04:21,500
ایجاد خواهد شد و من به
93
00:04:21,500 –> 00:04:23,720
اشیاء اتصال و هر دو انتهای
94
00:04:23,720 –> 00:04:27,800
آن لوله خوب می رسم، بنابراین اکنون آن را دارم، بنابراین
95
00:04:27,800 –> 00:04:29,630
اکنون زمان ایجاد دو فرآیند است
96
00:04:29,630 –> 00:04:31,250
، فرض کنید P 1 برابر است با
97
00:04:31,250 –> 00:04:33,980
فرآیند چند پردازشی نقطه ای در
98
00:04:33,980 –> 00:04:37,760
فرآیندی که می گذرانم. هدف ب