در این مطلب، ویدئو آموزش: Santiago Basulto – Python Concurrency: از مبتدی تا حرفه ای با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 2:57:12
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:11,910 –> 00:00:14,590
به همزمانی پایتون ما خوش آمدید
2
00:00:14,590 –> 00:00:17,260
آموزش اسم من سانتیاگو و حتی
3
00:00:17,260 –> 00:00:19,360
اگرچه من دوست دارم در یک اتاق باشم
4
00:00:19,360 –> 00:00:21,970
با همه اشتراک گذاری شما این را می دانید
5
00:00:21,970 –> 00:00:23,920
آموزش در همان اتاق در پیتسبورگ
6
00:00:23,920 –> 00:00:26,860
عالی است که آن را در این قالب امتحان کنید
7
00:00:26,860 –> 00:00:28,540
بنابراین من بسیار خوشحالم که می توانیم آن را در این زمینه انجام دهیم
8
00:00:28,540 –> 00:00:30,820
روشی که من این آموزش را از آن اقتباس کرده ام
9
00:00:30,820 –> 00:00:32,770
نسخه معمولی که من آماده کردم
10
00:00:32,770 –> 00:00:34,510
و تعداد زیادی توقف در وسط داشت
11
00:00:34,510 –> 00:00:37,390
چک کردن تمرینات برای این آنلاین
12
00:00:37,390 –> 00:00:39,550
نسخه ما تمرین ها را جدا کرده ایم
13
00:00:39,550 –> 00:00:41,860
در یک ثانیه یک تکه دوم پس ما هستیم
14
00:00:41,860 –> 00:00:44,109
تمام درس ها را در این کار انجام خواهم داد
15
00:00:44,109 –> 00:00:45,579
ضبط کنید و سپس آن را خواهید داشت
16
00:00:45,579 –> 00:00:47,859
زمان بررسی تکالیف و
17
00:00:47,859 –> 00:00:50,379
پروژه ها پس همانطور که به شما گفتم نام من است
18
00:00:50,379 –> 00:00:52,719
سانتیاگو من اهل آرژانتین هستم و برای آن کار می کنم
19
00:00:52,719 –> 00:00:55,000
از راه دور آرام در واقع یکی از بنیانگذاران در
20
00:00:55,000 –> 00:00:57,010
سفارش آمدن چند وقت پیش بود و شد
21
00:00:57,010 –> 00:01:00,100
چرا من به دست آوردن biiian و ما دوره ها را انجام می دهیم
22
00:01:00,100 –> 00:01:01,929
ما به ضبط نور و همه چیز عادت کرده ایم
23
00:01:01,929 –> 00:01:05,980
که ما دوره های آنلاین انجام می دهیم داده ها را انجام می دهیم
24
00:01:05,980 –> 00:01:08,710
دوره های علوم دوره های شبکه دروس ابری
25
00:01:08,710 –> 00:01:10,720
دوره های محاسباتی آن را بررسی کنید ما را بررسی کنید
26
00:01:10,720 –> 00:01:13,600
من باید بیایم و الان هستم
27
00:01:13,600 –> 00:01:15,940
کار در زمان شخصی من در این
28
00:01:15,940 –> 00:01:17,680
کتابخانه ای که موازی با هدف است
29
00:01:17,680 –> 00:01:19,840
ارائه سطح بالا سطح بالا است
30
00:01:19,840 –> 00:01:22,330
رابط برای کد همزمان حتی
31
00:01:22,330 –> 00:01:25,000
سطح بالاتر و همزمان در معاملات آتی
32
00:01:25,000 –> 00:01:26,500
که کتابخانه ای است که ما در آن خواهیم دید
33
00:01:26,500 –> 00:01:29,680
البته این آموزش پس بیایید شیرجه بزنیم
34
00:01:29,680 –> 00:01:31,600
مستقیما به محتوای این
35
00:01:31,600 –> 00:01:33,580
آموزش در بخش اول ما
36
00:01:33,580 –> 00:01:35,290
می خواهم کمی بیشتر از یک
37
00:01:35,290 –> 00:01:38,050
درک مفهومی چگونگی کامپیوتر
38
00:01:38,050 –> 00:01:40,300
معماری کامپیوتر کار می کند
39
00:01:40,300 –> 00:01:41,740
نقش هر یک از قطعاتی که داریم
40
00:01:41,740 –> 00:01:43,840
در یک کامپیوتر و همچنین نقش
41
00:01:43,840 –> 00:01:46,230
سیستم عامل و سپس ما می خواهیم
42
00:01:46,230 –> 00:01:49,210
مستقیم وارد کدنویسی شوید و خواهیم دید
43
00:01:49,210 –> 00:01:51,580
چند رشته ای چند پردازشی ما هستیم
44
00:01:51,580 –> 00:01:53,440
همگام سازی موضوع را می بینیم
45
00:01:53,440 –> 00:01:55,120
وعده با بن بست آبشش را خواهم دید
46
00:01:55,120 –> 00:01:57,010
معاملات آتی بار همزمان چند پردازشی
47
00:01:57,010 –> 00:01:59,530
و در نهایت مقدمه ای بر بار همتراز
48
00:01:59,530 –> 00:02:02,740
کتابخانه ای که دارم روی آن کار می کنم اما
49
00:02:02,740 –> 00:02:04,510
دوباره مهم است که ابتدا درک کنید
50
00:02:04,510 –> 00:02:07,270
چرا ما باید همزمان کاری را انجام دهیم
51
00:02:07,270 –> 00:02:10,568
نیاز به نوشتن برنامه های همزمان به من اجازه دهید
52
00:02:10,568 –> 00:02:12,040
اول شروع کن بهت بگم این چیه
53
00:02:12,040 –> 00:02:15,010
آموزش در مورد اوکی نیست زیرا درست است
54
00:02:15,010 –> 00:02:17,620
برای من تعیین انتظارات مهم است
55
00:02:17,620 –> 00:02:19,569
و شما می دانید که ما در مورد چه چیزی صحبت خواهیم کرد
56
00:02:19,569 –> 00:02:21,700
در مورد و چه چیزی از این خواهد بود
57
00:02:21,700 –> 00:02:23,410
پس اولین چیز این است که ما نیستیم
58
00:02:23,410 –> 00:02:25,090
صحبت کردن در مورد دیده شده تایو
59
00:02:25,090 –> 00:02:25,690
یا
60
00:02:25,690 –> 00:02:27,520
همه این کتابخانه های جایگزین دیگر
61
00:02:27,520 –> 00:02:30,340
این یک مدل متفاوت است همچنین مفید است
62
00:02:30,340 –> 00:02:35,590
برای ایجاد همگام سازی کد همزمان
63
00:02:35,590 –> 00:02:38,290
i/o اما موضوع اینها نیست
64
00:02:38,290 –> 00:02:40,360
این دو کلمه کمی بیشتر
65
00:02:40,360 –> 00:02:41,710
کلاسیک ما دو تا انجام میدیم
66
00:02:41,710 –> 00:02:43,450
پردازش چند رشته ای و
67
00:02:43,450 –> 00:02:45,820
این دوباره یک همگام سازی i/o یک است
68
00:02:45,820 –> 00:02:48,580
سیستا بالقوه برای همه چیز مفید است
69
00:02:48,580 –> 00:02:50,020
ما در این آموزش انجام می دهیم اما اینطور است
70
00:02:50,020 –> 00:02:52,630
در محدوده ای نیست که ما انجام نخواهیم داد
71
00:02:52,630 –> 00:02:55,240
برنامه نویسی رشته برنامه نویسی سطح پایین
72
00:02:55,240 –> 00:02:56,620
با وجود اینکه من به چیزی شبیه به آن اشاره کردم
73
00:02:56,620 –> 00:02:59,230
فرآیند چنگال یا فرآیند چنگال
74
00:02:59,230 –> 00:03:01,180
فرآیند تخم ریزی انجام نخواهد شد
75
00:03:01,180 –> 00:03:04,180
برنامه نویسی سطح پایین این چند است
76
00:03:04,180 –> 00:03:05,620
threading multi programming
77
00:03:05,620 –> 00:03:09,010
چند پردازش جایگزین نیست
78
00:03:09,010 –> 00:03:11,590
برای معماری های توزیع شده بسیار خوب است
79
00:03:11,590 –> 00:03:14,140
بنابراین اگر شما یک وب سایت برای مثال و
80
00:03:14,140 –> 00:03:16,150
هر زمان که درخواستی دریافت کردید
81
00:03:16,150 –> 00:03:17,970
چند کار را همزمان انجام دهید
82
00:03:17,970 –> 00:03:20,560
معمولاً این مکان در یک شغل بهتر است
83
00:03:20,560 –> 00:03:24,340
در یک کار معمولی که شما را می شناسید صف بکشید
84
00:03:24,340 –> 00:03:27,460
می توانید از rabbitmq یا این ارائه شده استفاده کنید
85
00:03:27,460 –> 00:03:30,310
خدماتی مانند sqs اگر از جنگل استفاده می کنید
86
00:03:30,310 –> 00:03:32,110
می توانید کرفس را پرداخت کنید اما اینطور نیست
87
00:03:32,110 –> 00:03:34,840
در مورد آن و شما نباید آن را اشتباه بگیرید
88
00:03:34,840 –> 00:03:36,910
شما مهم است که درک کنید
89
00:03:36,910 –> 00:03:38,770
نیازی که دارید و حق چیست
90
00:03:38,770 –> 00:03:42,730
ابزاری برای حل آن مشکل این نیست
91
00:03:42,730 –> 00:03:45,670
در مورد خوشه بندی پیوند خط لوله یا
92
00:03:45,670 –> 00:03:48,459
محاسبات توزیعی که بهتر است
93
00:03:48,459 –> 00:03:50,739
برای چیزی مانند غروب یا غروب مناسب است
94
00:03:50,739 –> 00:03:52,360
پارکینگی که چندتایی دارید
95
00:03:52,360 –> 00:03:54,489
کامپیوترهایی که چیزی را در آن پردازش می کنند
96
00:03:54,489 –> 00:03:57,220
موازی باشه این فقط یکی نیست
97
00:03:57,220 –> 00:03:58,540
کامپیوتر چند رشته ای چند
98
00:03:58,540 –> 00:04:01,810
پردازش و حتی در همان کامپیوتر
99
00:04:01,810 –> 00:04:05,980
شما می توانید Genie را در موازی سازی GPU انجام دهید
100
00:04:05,980 –> 00:04:07,930
در مورد آن نیست شما می توانید آن را بررسی کنید
101
00:04:07,930 –> 00:04:09,880
در rapid out io two بسیار جالب است
102
00:04:09,880 –> 00:04:14,170
کتابخانه در بالای CUDA که Nvidia است
103
00:04:14,170 –> 00:04:16,630
اما یک لوله دارد که یک API پایتون است
104
00:04:16,630 –> 00:04:20,048
با قاب های داده کار کنید
105
00:04:20,048 –> 00:04:21,850
آنها مانند دارند
106
00:04:21,850 –> 00:04:24,670
و مترادف هر یک از موارد مهم است
107
00:04:24,670 –> 00:04:26,050
کتابخانه علم داده مانند پنا است
108
00:04:26,050 –> 00:04:27,640
آنها فریم های داده ای دارند تا بتوانم یاد بگیرم
109
00:04:27,640 –> 00:04:30,280
آنها کیون میلی لیتر دارند بنابراین جالب است
110
00:04:30,280 –> 00:04:33,760
اما این در مورد آن نیز نیست
111
00:04:33,760 –> 00:04:35,260
جالبه بفهمم کجایی
112
00:04:35,260 –> 00:04:38,110
نشستن در آنجا این بسیار است
113
00:04:38,110 –> 00:04:40,870
مدل جالب بسیار ساده است
114
00:04:40,870 –> 00:04:44,500
شما می توانید انجام دهید شما می توانید یک وظیفه که
115
00:04:44,500 –> 00:04:46,390
نیاز به انجام دارد یا می تواند انجام شود
116
00:04:46,390 –> 00:04:49,180
تنها در یک هسته در یک تک اجرا می شود
117
00:04:49,180 –> 00:04:52,300
رشته کد تک فرآیند فقط هر
118
00:04:52,300 –> 00:04:56,320
اسکریپت 95 درصد از وظایف شما انجام خواهد شد
119
00:04:56,320 –> 00:04:58,870
احتمالاً در این دسته از فقط قرار می گیرند
120
00:04:58,870 –> 00:05:01,290
یک هسته و این عالی است
121
00:05:01,290 –> 00:05:04,660
سپس یک قدم برای یک حرکت وجود دارد
122
00:05:04,660 –> 00:05:07,840
مرحله آن دو تا هشت هسته است که ما می توانیم
123
00:05:07,840 –> 00:05:11,140
بگو امروز دو تا 16 32 هسته چیزی
124
00:05:11,140 –> 00:05:13,420
که در کامپیوتر شما که دارید جای می گیرد
125
00:05:13,420 –> 00:05:16,240
این کار فشرده است اما شما قرار داده اید
126
00:05:16,240 –> 00:05:18,940
کامپیوتر شما برای اجرا 30 دقیقه طول می کشد
127
00:05:18,940 –> 00:05:22,180
یک ساعت 2 ساعت و تمام شد و تمام شد
128
00:05:22,180 –> 00:05:24,250
امکان انجام آن در رایانه شخصی شما وجود دارد
129
00:05:24,250 –> 00:05:26,380
بنابراین این مرحله دوم است و سپس شما
130
00:05:26,380 –> 00:05:28,540
وقتی بیشتر دارید مرحله دیگر را داشته باشید
131
00:05:28,540 –> 00:05:32,980
از این آستانه CPU که در است
132
00:05:32,980 –> 00:05:35,320
این مورد می گوید 9 پلاس می تواند 16 به علاوه باشد
133
00:05:35,320 –> 00:05:37,420
32 بعلاوه باز هم به بزرگی نمی خورد
134
00:05:37,420 –> 00:05:39,580
کامپیوتر یک تجارت بزرگ از a
135
00:05:39,580 –> 00:05:41,530
کامپیوتر تجاری موجود و
136
00:05:41,530 –> 00:05:43,060
آن زمانی است که شما نیاز به توزیع دارید
137
00:05:43,060 –> 00:05:45,130
پردازش اما در این آموزش ما هستیم
138
00:05:45,130 –> 00:05:47,920
در نقطه شماره 2 2 2 تمرکز خواهم کرد
139
00:05:47,920 –> 00:05:51,730
2 تا 16 تا 2 32 هسته هر چه می توانید
140
00:05:51,730 –> 00:05:55,780
در رایانه خود انجام دهید چرا ما نیاز داریم
141
00:05:55,780 –> 00:05:56,650
برنامه نویسی همزمان
142
00:05:56,650 –> 00:06:00,040
چه استفاده از آن خوب ایده از
143
00:06:00,040 –> 00:06:03,010
تکامل F CPU ها در محاسبات
144
00:06:03,010 –> 00:06:05,290
جالب است این نمودار که هست
145
00:06:05,290 –> 00:06:07,350
منبع عالی شامل این نور است
146
00:06:07,350 –> 00:06:12,220
نشان می دهد که CPU ها چگونه پیشرفت کرده اند
147
00:06:12,220 –> 00:06:15,070
در طول زمان و آنچه می خواهید
148
00:06:15,070 –> 00:06:19,900
ببینید فرکانس CPU ها درست است
149
00:06:19,900 –> 00:06:23,800
اینجاست که داستان می نویسد که فقط همه
150
00:06:23,800 –> 00:06:28,750
مسطح در این تعداد مگاهرتز فقط است
151
00:06:28,750 –> 00:06:31,450
آنجا می ماند و CPU ها را جابجا نمی کند
152
00:06:31,450 –> 00:06:34,629
سریعتر نمی شوند ما به نوعی داریم
153
00:06:34,629 –> 00:06:37,719
به نوعی به حداکثر سطح رسیده است
154
00:06:37,719 –> 00:06:39,309
شرایط فراوانی به دلیل یک عدد
155
00:06:39,309 –> 00:06:42,399
دلایلی چون گرمایش بیش از حد آنها ضربه می زند
156
00:06:42,399 –> 00:06:45,249
به دلیل مصرف برق به دلیل
157
00:06:45,249 –> 00:06:47,979
آنها در مکان کوچکی که ما داریم نمی گنجند
158
00:06:47,979 –> 00:06:50,110
برای قرار دادن آنها به نوعی رسیده ایم
159
00:06:50,110 –> 00:06:53,649
محدودیتی وجود دارد اما چیزی که ما نداریم
160
00:06:53,649 –> 00:06:57,039
رسیده به حد هنوز تعداد است
161
00:06:57,039 –> 00:07:01,990
از هسته ها تا تعداد هسته های منطقی شما
162
00:07:01,990 –> 00:07:04,959
ببینید که خیلی سریع بالا می رود بنابراین در
163
00:07:04,959 –> 00:07:07,779
که در این 20 سال گذشته داشته است
164
00:07:07,779 –> 00:07:11,800
از ماشین های تک هسته ای به 100 تبدیل شد
165
00:07:11,800 –> 00:07:13,599
هسته برای مثال کاملا ممکن است
166
00:07:13,599 –> 00:07:16,209
وقتی شروع کردم به انجام محاسبات مرتبط
167
00:07:16,209 –> 00:07:16,629
چیزها
168
00:07:16,629 –> 00:07:18,969
همه چیز یک هسته بود که دیوانه کننده بود
169
00:07:18,969 –> 00:07:21,580
در مورد دو هسته فکر کنید که یک دو هسته ای بود
170
00:07:21,580 –> 00:07:24,729
یک چیز تئوریک دیوانه که ما آن را می دانستیم
171
00:07:24,729 –> 00:07:25,330
وجود داشته است
172
00:07:25,330 –> 00:07:29,830
هیچ کس در دنیای امروز یکی را نداشت
173
00:07:29,830 –> 00:07:33,839
به دست آوردن یک هسته منطقی 64 دیوانه نیست
174
00:07:33,839 –> 00:07:37,389
حقوق کامپیوتر یا CPU کاملاً محفوظ است
175
00:07:37,389 –> 00:07:39,689
ممکن است، بنابراین ما وارد این موارد می شویم
176
00:07:39,689 –> 00:07:42,249
مرتبه دوم قدر و آن اراده
177
00:07:42,249 –> 00:07:43,809
احتمالاً افزایش می یابد نمی دانم
178
00:07:43,809 –> 00:07:47,319
چه محدودیتی در برخی از نقاط ما ما
179
00:07:47,319 –> 00:07:49,689
یک مجانب درست را دریافت خواهیم کرد
180
00:07:49,689 –> 00:07:52,059
ما نوعی محدودیت داریم اما تا اینجای کار اینطور است
181
00:07:52,059 –> 00:07:54,539
همچنان در حال افزایش است بنابراین هدف این است
182
00:07:54,539 –> 00:07:57,849
با برنامه نویسی همزمان ساخته می شود
183
00:07:57,849 –> 00:08:00,879
استفاده از تمام این هسته ها هر زمان که باشد
184
00:08:00,879 –> 00:08:03,519
امکان پذیر است، بنابراین ما همه اینها را می خواهیم
185
00:08:03,519 –> 00:08:05,469
ما می خواهیم از همه اینها استفاده کنیم
186
00:08:05,469 –> 00:08:08,889
البته سرعت ما بالا نمی رود
187
00:08:08,889 –> 00:08:10,689
همین سرعت را داشته باشیم پس مجبوریم
188
00:08:10,689 –> 00:08:12,879
کار ما را در چندین هسته توزیع کنیم
189
00:08:12,879 –> 00:08:15,759
تا آنجا که ممکن است هسته های زیادی برای آن وجود دارد
190
00:08:15,759 –> 00:08:18,309
کاری که هدفمند است، به همین دلیل است که ما نیاز داریم
191
00:08:18,309 –> 00:08:21,249
همزمان بیشتر برای نوشتن همزمان
192
00:08:21,249 –> 00:08:24,369
برنامه ها و معمولا وظایف خواهد بود
193
00:08:24,369 –> 00:08:26,199
من فکر می کنم برای هر یک از شما متفاوت است
194
00:08:26,199 –> 00:08:27,969
بازی ها نمونه بسیار خوبی هستند
195
00:08:27,969 –> 00:08:30,490
معماری چند هسته ای که در آن شما
196
00:08:30,490 –> 00:08:31,869
اتفاقات متعددی در
197
00:08:31,869 –> 00:08:33,519
در همان زمان که شخصیت را در حال اجرا دارید
198
00:08:33,519 –> 00:08:37,479
شما باران اتفاق می افتد شما گلوله دارید
199
00:08:37,479 –> 00:08:39,639
در حال شلیک توسط دشمنان شما چندین
200
00:08:39,639 –> 00:08:41,559
همه چیز در همان زمان درست اتفاق می افتد
201
00:08:41,559 –> 00:08:43,208
و شما می توانید از همه اینها استفاده کنید
202
00:08:43,208 –> 00:08:45,450
هسته ها برای ارائه یک نرم تر
203
00:08:45,450 –> 00:08:49,560
تجربه بیایید با کامپیوتر شروع کنیم
204
00:08:49,560 –> 00:08:51,360
معماری این اصول اولیه است
205
00:08:51,360 –> 00:08:53,430
مبانی pointone بیایید دوباره به آن برگردیم
206
00:08:53,430 –> 00:08:55,550
مبانی معماری کامپیوتر و
207
00:08:55,550 –> 00:08:58,860
این معماری فون نویمان است
208
00:08:58,860 –> 00:09:01,590
فقط خیلی ساده قدیمی بسیار استاندارد هستند
209
00:09:01,590 –> 00:09:04,080
امروزه همه معماری ها کامپیوتر هستند
210
00:09:04,080 –> 00:09:06,060
از این معماری مبتنی بر آن استفاده می کنند
211
00:09:06,060 –> 00:09:12,390
در حافظه CPU یک واحد حافظه در این
212
00:09:12,390 –> 00:09:15,840
مورد آن رام و I/o همه چیز است
213
00:09:15,840 –> 00:09:18,960
در داخل IO است و دوباره آن است
214
00:09:18,960 –> 00:09:21,570
ساده ترین مدلی که می توانیم داشته باشیم و اساسا
215
00:09:21,570 –> 00:09:23,400
آنچه ما داریم این است که با توجه به
216
00:09:23,400 –> 00:09:27,090
عملیاتی که در کد یا کد خود داریم
217
00:09:27,090 –> 00:09:28,770
دستورالعمل هایی که در کد خود داریم آنها هستند
218
00:09:28,770 –> 00:09:31,770
معمولاً اگر بخواهید در هر کدام سقوط خواهید کرد
219
00:09:31,770 –> 00:09:34,650
یکی از این دسته ها برخی از عملیات
220
00:09:34,650 –> 00:09:38,010
CPU خواهد بود که توسط آنها انجام خواهد شد
221
00:09:38,010 –> 00:09:40,200
CPU برخی از عملیات های دیگر را ذخیره خواهد کرد
222
00:09:40,200 –> 00:09:41,400
چیزی در حافظه برخی دیگر
223
00:09:41,400 –> 00:09:45,090
عملیات به IO آن متصل خواهد شد
224
00:09:45,090 –> 00:09:48,000
ارتباط اینها با دسترسی مهم است
225
00:09:48,000 –> 00:09:51,300
زمان تمام این منابع برای
226
00:09:51,300 –> 00:09:54,150
به عنوان مثال دسترسی به چیزی که CPU یک است
227
00:09:54,150 –> 00:09:56,580
بسیار سریعتر از دسترسی به چیزی در
228
00:09:56,580 –> 00:10:00,870
حافظه یا حتی IO و من می خواهم شما را نگه دارید
229
00:10:00,870 –> 00:10:02,820
به این موضوع توجه کنید زیرا این اتفاق خواهد افتاد
230
00:10:02,820 –> 00:10:06,540
بعداً خیلی مهم است، برای مثال این
231
00:10:06,540 –> 00:10:08,790
فشرده سازی بسیار جالبی است
232
00:10:08,790 –> 00:10:13,560
زمان نسبی انسان اگر یک چرخه CPU باشد
233
00:10:13,560 –> 00:10:17,520
یک ثانیه به حافظه حافظه دسترسی دارد
234
00:10:17,520 –> 00:10:21,050
که می دانیم دسترسی سریع به حافظه دارد
235
00:10:21,050 –> 00:10:23,130
چهار دقیقه طول می کشد
236
00:10:23,130 –> 00:10:26,520
چه آهسته تر چه آهسته باشد
237
00:10:26,520 –> 00:10:30,170
حافظه نسبت به CPU کندتر است
238
00:10:30,170 –> 00:10:33,150
دسترسی به هارد دیسک خود حتی اگر
239
00:10:33,150 –> 00:10:35,640
روی یک درایو حالت جامد قرار دارد
240
00:10:35,640 –> 00:10:37,920
پنج تا چهار روز یک امتیاز بگیرید
241
00:10:37,920 –> 00:10:40,560
دسترسی به هارد دیسک چقدر کند است
242
00:10:40,560 –> 00:10:43,650
درایو مکانیکی صفحه تمام هارد
243
00:10:43,650 –> 00:10:45,890
یک تا نه ماه طول می کشد
244
00:10:45,890 –> 00:10:49,590
دسترسی به درخواست های شبکه می تواند
245
00:10:49,590 –> 00:10:52,740
دوباره پنج سال تا یازده سال طول بکشد
246
00:10:52,740 –> 00:10:55,620
زمان های نسبی در مقایسه با یک چرخه CPU
247
00:10:55,620 –> 00:10:58,170
بنابراین این مهم است که خواهد بود
248
00:10:58,170 –> 00:11:01,170
زمانی مهم هستند که بدانیم چه بخش هایی از
249
00:11:01,170 –> 00:11:03,120
کد ما را باید اجرا کنیم
250
00:11:03,120 –> 00:11:05,310
به طور همزمان در آن صورت ما می خواهیم
251
00:11:05,310 –> 00:11:10,110
تصمیم بگیرید که آیا کد ما IO سنگین است یا خیر
252
00:11:10,110 –> 00:11:12,660
این باعث می شود یک تن از درخواست های شبکه ما
253
00:11:12,660 –> 00:11:15,600
خواهد دانست که چه زمانی آن را فلج کند
254
00:11:15,600 –> 00:11:18,920
اگر کد ما CPU باشد همان چیزی است
255
00:11:18,920 –> 00:11:22,320
سنگین باعث می شود یک تن از CPU محاسباتی CPU
256
00:11:22,320 –> 00:11:24,360
مطمئناً این بعداً مهم خواهد بود
257
00:11:24,360 –> 00:11:26,790
به من اعتماد کنید ما اکنون به سراغ آن می رویم
258
00:11:26,790 –> 00:11:28,889
سیستم عامل و نقش
259
00:11:28,889 –> 00:11:32,699
سیستم عامل خیلی جالبه
260
00:11:32,699 –> 00:11:35,459
برای آشنایی با تاریخچه عملیات
261
00:11:35,459 –> 00:11:37,769
سیستم ها و چگونگی تکامل آنها بسیار من است
262
00:11:37,769 –> 00:11:40,199
من شخصاً آن را دوست دارم
263
00:11:40,199 –> 00:11:41,279
چند کتاب و این خیلی
264
00:11:41,279 –> 00:11:43,320
درک فرآیند جالب است
265
00:11:43,320 –> 00:11:46,980
بشریت برای درک چگونگی آن تلاش کرد
266
00:11:46,980 –> 00:11:48,810
ما بسیار به یک سیستم عامل و
267
00:11:48,810 –> 00:11:52,019
چرا اما اساسا یک سیستم عامل است
268
00:11:52,019 –> 00:11:54,690
فقط یک برنامه فقط کسی نشسته و
269
00:11:54,690 –> 00:11:56,880
یک سیستم عامل نوشت این یک برنامه است
270
00:11:56,880 –> 00:11:59,910
اما آنچه با گذشت زمان فهمیدیم این است
271
00:11:59,910 –> 00:12:03,930
که کامپیوترها بسیار گرانبها هستند
272
00:12:03,930 –> 00:12:07,410
منبعی که می توانیم به صورت تصادفی آن را اجرا کنیم
273
00:12:07,410 –> 00:12:11,180
برنامه هایی که در بالا دسترسی مستقیم دارند
274
00:12:11,180 –> 00:12:15,120
حافظه CPU و i/o برای آن بسیار رایج است
275
00:12:15,120 –> 00:12:17,100
من برای دانلود یک برنامه از
276
00:12:17,100 –> 00:12:19,230
اینترنت و روی کامپیوترم اجرا کنم اما
277
00:12:19,230 –> 00:12:21,029
کامپیوتر من نیز یک تن دارم
278
00:12:21,029 –> 00:12:22,649
اطلاعات ممتاز
279
00:12:22,649 –> 00:12:25,829
و بدون سیستم عامل اجازه دهید
280
00:12:25,829 –> 00:12:27,449
یک لحظه تصور کنید که وجود ندارد
281
00:12:27,449 –> 00:12:29,399
سیستم عامل ها و رقابت بر روی هر کدام
282
00:12:29,399 –> 00:12:32,640
برنامه ای که دانلود می کنید فقط می توانید به آن دسترسی داشته باشید
283
00:12:32,640 –> 00:12:35,399
هر منبعی که بخواهند
284
00:12:35,399 –> 00:12:37,709
اعتماد به این برنامه ها بسیار سخت است
285
00:12:37,709 –> 00:12:39,540
به همین دلیل است که ما عملیات ایجاد کرده ایم
286
00:12:39,540 –> 00:12:43,230
سیستم ها ما یک لایه ایجاد کرده ایم که
287
00:12:43,230 –> 00:12:46,800
برای سخت افزار در بالای صفحه قرار می گیرد
288
00:12:46,800 –> 00:12:48,630
درست است که ما همه کار سخت خود را مانند خود داریم
289
00:12:48,630 –> 00:12:51,240
منابع گرانبها و ما قرار داده ایم
290
00:12:51,240 –> 00:12:54,240
بین هر کد تصادفی که می توانید لایه کنید
291
00:12:54,240 –> 00:12:56,220
به این فکر کنید که می توانید آن ها را اجرا کنید
292
00:12:56,220 –> 00:12:59,670
منابع بنابراین سیستم عامل است
293
00:12:59,670 –> 00:13:02,670
نگهبان آن منابع هر کدام
294
00:13:02,670 –> 00:13:04,860
عملیاتی که می خواهید آن را انجام دهید
295
00:13:04,860 –> 00:13:06,959
در واقع از طریق عملیات
296
00:13:06,959 –> 00:13:08,519
سیستم و سیستم عامل قرار است
297
00:13:08,519 –> 00:13:10,350
کنترل داشته باشند
298
00:13:10,350 –> 00:13:12,840
چه خاطره ای می توانید بنویسید یا چه خاطره ای
299
00:13:12,840 –> 00:13:15,270
شما می توانید جایی که می توانید بنویسید یا بخوانید بخوانید
300
00:13:15,270 –> 00:13:19,410
فایل ها و غیره که همه بخشی از
301
00:13:19,410 –> 00:13:21,300
ماهیت حفاظتی عملیات
302
00:13:21,300 –> 00:13:23,250
سیستم البته عملیات بسیاری دارند
303
00:13:23,250 –> 00:13:27,450
کاربردهای بیشتر مانند صفحه بندی صفحه بندی
304
00:13:27,450 –> 00:13:29,940
الگوریتم ها و دیسک های مدیریت و این
305
00:13:29,940 –> 00:13:30,660
درایو می کند
306
00:13:30,660 –> 00:13:33,690
همه آن چیزها در ما در ما در این
307
00:13:33,690 –> 00:13:34,950
مورد و مهم برای درک
308
00:13:34,950 –> 00:13:36,870
ماهیت حفاظتی عملیات
309
00:13:36,870 –> 00:13:40,830
سیستم به منظور اجرای کد شما
310
00:13:40,830 –> 00:13:43,340
سیستم عامل از مفهوم استفاده خواهد کرد
311
00:13:43,340 –> 00:13:46,740
فرآیند به یاد داشته باشید که شما نمی توانید فقط اجرا کنید
312
00:13:46,740 –> 00:13:48,630
کد خود را مستقیماً باید تحویل دهید
313
00:13:48,630 –> 00:13:51,150
کد خود را و به عامل بگویید
314
00:13:51,150 –> 00:13:52,590
سیستم هی من می خواهم این قطعه را اجرا کنم
315
00:13:52,590 –> 00:13:55,290
کد می توانید آن را برای من و
316
00:13:55,290 –> 00:13:57,210
سیستم عامل قرار است آن را وارد کند
317
00:13:57,210 –> 00:14:00,290
چیزی که ما آن را فرآیند می نامیم، بنابراین این کد ماست
318
00:14:00,290 –> 00:14:03,000
و سیستم عامل آن را قرار می دهد
319
00:14:03,000 –> 00:14:07,470
در این درست اینجا در این ظرف
320
00:14:07,470 –> 00:14:10,020
که کل فرآیند است که خواهد شد
321
00:14:10,020 –> 00:14:12,930
شامل تعداد جداگانه ای از چیزها است
322
00:14:12,930 –> 00:14:14,430
کد شما را خواهد داشت، یک کد شما را خواهد داشت
323
00:14:14,430 –> 00:14:17,040
مرجع آن در واقع شما را بارگذاری می کند
324
00:14:17,040 –> 00:14:18,480
کدی که در حافظه وجود دارد یک خواهد بود
325
00:14:18,480 –> 00:14:20,700
مرجع وجود دارد آن را تخصیص رم
326
00:14:20,700 –> 00:14:24,360
یا حافظه آن را می گویند این روند
327
00:14:24,360 –> 00:14:27,000
دارای این تعداد زیادی بایت واقع شده است
328
00:14:27,000 –> 00:14:29,340
حافظه برای استفاده از آن همه چیز را خواهد داشت
329
00:14:29,340 –> 00:14:31,350
فایل متغیرهای محلی فایل اسکریپت
330
00:14:31,350 –> 00:14:34,230
توصیف کننده از همه چیزهایی که نیاز داریم متاسفم
331
00:14:34,230 –> 00:14:36,930
برای دسترسی بنابراین به عنوان مثال اینجا شروع کردیم
332
00:14:36,930 –> 00:14:38,810
با x برابر با 1 ما آن را افزایش می دهیم
333
00:14:38,810 –> 00:14:41,370
سیستم عامل در حال پیگیری است
334
00:14:41,370 –> 00:14:44,130
حافظه ما فایلی را که از آن خواسته ایم باز می کنیم
335
00:14:44,130 –> 00:14:46,320
سیستم عامل فایل را برای ما بخواهد
336
00:14:46,320 –> 00:14:48,510
و ما اشاره ای به آن فینال داریم
337
00:14:48,510 –> 00:14:50,520
خطای اسکریپت پس سیستم عامل است
338
00:14:50,520 –> 00:14:52,950
ایجاد این انتزاع فرآیند بنابراین
339
00:14:52,950 –> 00:14:55,140
کد ما می تواند با سیستم تعامل داشته باشد
340
00:14:55,140 –> 00:14:58,280
از طریق این فرآیند در آزمون تماسی
341
00:14:58,280 –> 00:15:01,880
انتزاع بنابراین هر زمان که ما کد را اجرا می کنیم
342
00:15:01,880 –> 00:15:05,490
در این صورت هر زمان که پایتون را انجام دهید
343
00:15:05,490 –> 00:15:07,680
فرمان خوب در واقع اتفاق می افتد
344
00:15:07,680 –> 00:15:10,350
که سیستم عامل در حال ایجاد یک
345
00:15:10,350 –> 00:15:12,600
فرآیند جدید و تزریق آن است
346
00:15:12,600 –> 00:15:15,180
کد در آنجا وجود دارد و در حال اجرای آن است
347
00:15:15,180 –> 00:15:17,820
شما در واقع می توانید همان برنامه را اجرا کنید
348
00:15:17,820 –> 00:15:19,180
که شما این را نوشته اید
349
00:15:19,180 –> 00:15:22,510
فایل dot pie که می توانید آن را در آن اجرا کنید
350
00:15:22,510 –> 00:15:25,030
چندگانه می توانید آن را چندگانه اجرا کنید
351
00:15:25,030 –> 00:15:26,530
زمانی که چندین فرآیند دارید
352
00:15:26,530 –> 00:15:29,080
در حال اجرا همزمان در همان
353
00:15:29,080 –> 00:15:31,840
کامپیوتر این چیزی است که ما می توانیم درست ببینیم
354
00:15:31,840 –> 00:15:32,470
اینجا
355
00:15:32,470 –> 00:15:34,600
متاسفم که اینها همه فرآیندها هستند
356
00:15:34,600 –> 00:15:37,210
که من در کامپیوترم دارم که بعد از آن اجرا می شود
357
00:15:37,210 –> 00:15:39,250
دویدن به دنبال اخاذی از همه آنها
358
00:15:39,250 –> 00:15:41,890
فرآیندها و دوباره همه وجود دارد
359
00:15:41,890 –> 00:15:44,320
نمونه های مختلف آن فرآیندها
360
00:15:44,320 –> 00:15:47,380
شما می توانید همانجا شناسه پردازش را ببینید
361
00:15:47,380 –> 00:15:48,850
به این معنی است که یک نمونه متفاوت وجود دارد
362
00:15:48,850 –> 00:15:50,860
از هر یک از این فرآیندها هستند
363
00:15:50,860 –> 00:15:52,930
همه یک کد را اجرا می کنند اما هستند
364
00:15:52,930 –> 00:15:56,650
همه فرآیندهای مختلف پس چه در مورد
365
00:15:56,650 –> 00:15:58,960
همزمانی فرآیند و این همان است
366
00:15:58,960 –> 00:16:01,180
بخش بسیار جالب در مورد یادگیری
367
00:16:01,180 –> 00:16:04,320
درباره تاریخچه سیستم عامل
368
00:16:04,320 –> 00:16:07,450
در ابتدا اجازه دهید من فقط با
369
00:16:07,450 –> 00:16:10,090
اسلایدها اما فرض کنید فقط یک اسلاید داریم
370
00:16:10,090 –> 00:16:13,060
CPU من تو را پس می گیرم، من آن نیستم
371
00:16:13,060 –> 00:16:16,090
قدیمی اما من از دورانی هستم که وجود داشت
372
00:16:16,090 –> 00:16:18,850
فقط یک CPU فرض کنید شما فقط یک CPU دارید
373
00:16:18,850 –> 00:16:20,950
CPU در رایانه شما این چیزی نیست
374
00:16:20,950 –> 00:16:22,540
امروز اتفاق می افتد، اما بیایید فرض کنیم که چه چیزی است
375
00:16:22,540 –> 00:16:24,760
آنچه شما دارید ما فقط یک CPU در آن داریم
376
00:16:24,760 –> 00:16:27,280
کامپیوتر خود را یک بار اگر یک کارگر هستید
377
00:16:27,280 –> 00:16:33,250
فقط یک کارگر چند فرآیند می تواند
378
00:16:33,250 –> 00:16:36,100
شما همزمان در یک CPU اجرا می کنید
379
00:16:36,100 –> 00:16:38,560
این سوال است که البته شما هستید
380
00:16:38,560 –> 00:16:41,140
فقط یک کار را در یک زمان در آنجا اجرا خواهم کرد
381
00:16:41,140 –> 00:16:43,900
فقط یک کارگر است که فقط می توانید یک نفر را اداره کنید
382
00:16:43,900 –> 00:16:47,530
وظیفه اما حتی زمانی که من و کودک بودم
383
00:16:47,530 –> 00:16:52,440
یک کامپیوتر یک هسته ای داشتم که هنوز داشتم
384
00:16:52,440 –> 00:16:54,880
تجربه به اندازه کافی صاف جالب من
385
00:16:54,880 –> 00:16:57,220
میتوانستم بازی کنم، مثلاً میتوانستم doom را بازی کنم
386
00:16:57,220 –> 00:16:59,710
اولین نسخه از doom و من فقط داشتم
387
00:16:59,710 –> 00:17:04,209
یک هسته، بنابراین من یک گلوله شلیک می کنم و من را حرکت می دهم
388
00:17:04,209 –> 00:17:08,380
دشمن می میرد من دور می شوم پس چطور است
389
00:17:08,380 –> 00:17:10,690
تجربه اتفاق افتادن تنها با یک CPU
390
00:17:10,690 –> 00:17:13,630
اگر CPU بتواند یک چیز را پردازش کند
391
00:17:13,630 –> 00:17:13,930
زمان
392
00:17:13,930 –> 00:17:18,490
من یک گلوله شلیک می کنم و CPU را فقط خودم در آن قرار می دهم
393
00:17:18,490 –> 00:17:20,800
به معنای پیگیری گلوله و
394
00:17:20,800 –> 00:17:22,630
همه چیز یخ زده است من نمی توانم برای خودم
395
00:17:22,630 –> 00:17:26,440
دشمن به خاطر چه چیزی می تواند خوب حرکت کند
396
00:17:26,440 –> 00:17:29,500
ما به برش زمان زنگ می زنیم
397
00:17:29,500 –> 00:17:32,190
کتف سیستم عامل بنابراین
398
00:17:32,190 –> 00:17:35,760
حتی با یک CPU اجازه دهید این را حفظ کنیم
399
00:17:35,760 –> 00:17:37,620
فرضیه در اینجا ما با a کار می کنیم
400
00:17:37,620 –> 00:17:40,200
کامپیوتر فقط یک CPU دارد حتی اگر وجود داشته باشد
401
00:17:40,200 –> 00:17:43,140
چندین فرآیند در حال اجرا هستند
402
00:17:43,140 –> 00:17:45,690
همان زمان سیستم عامل است
403
00:17:45,690 –> 00:17:48,270
می خواهم آنها را در داخل و خارج به درستی برنامه ریزی کنم و
404
00:17:48,270 –> 00:17:50,790
کمی CPU به آنها می دهد
405
00:17:50,790 –> 00:17:53,340
زمان به هر یک از آنها فقط یک CPU
406
00:17:53,340 –> 00:17:55,530
سیستم عامل می خواهد ادعا کند
407
00:17:55,530 –> 00:17:58,290
CPU آن را می دهد اما می دهد
408
00:17:58,290 –> 00:18:00,450
به یک علامت زمان بدهید تا یکی را پردازش کند
409
00:18:00,450 –> 00:18:02,370
آن را پس خواهد گرفت و امضا خواهد کرد
410
00:18:02,370 –> 00:18:03,870
کمی زمان برای پردازش – آن را می خواهم
411
00:18:03,870 –> 00:18:05,550
پس از مدتی به امضای آن خواهد رسید
412
00:18:05,550 –> 00:18:08,910
فرآیند 3 را به شما می دهد
413
00:18:08,910 –> 00:18:11,130
تصور اینکه چیزهایی وجود دارد
414
00:18:11,130 –> 00:18:13,200
اتفاق می افتد در همان زمان زمانی که در
415
00:18:13,200 –> 00:18:17,490
واقعیت همه چیز اتفاق می افتد نیست
416
00:18:17,490 –> 00:18:19,830
نه در همان زمان به طور ماهرانه در داخل
417
00:18:19,830 –> 00:18:23,180
مثال ما برای بازی یک تیرانداز ساده در
418
00:18:23,180 –> 00:18:27,530
ما یک CPU را در یک دوره یک کور می شناسیم
419
00:18:27,530 –> 00:18:30,380
در اصل شما یک گلوله به گلوله شلیک می کنید
420
00:18:30,380 –> 00:18:36,030
برای یک قطعه ثانیه سفر می کند و سپس
421
00:18:36,030 –> 00:18:37,710
CPU به یک کاراکتر منتقل می شود
422
00:18:37,710 –> 00:18:39,420
CP به دشمن منتقل می شود و
423
00:18:39,420 –> 00:18:42,000
همه چیز آنجاست خیلی خیلی
424
00:18:42,000 –> 00:18:44,460
تعویض سریع متن برای هر یک از آنها
425
00:18:44,460 –> 00:18:46,350
در این مورد فرآیندی وجود ندارد
426
00:18:46,350 –> 00:18:47,760
اما بله بین فرآیندها وجود دارد
427
00:18:47,760 –> 00:18:50,220
سوئیچینگ زمینه ثابت های بسیار سریع
428
00:18:50,220 –> 00:18:52,620
که به شما این تصور را می دهد که
429
00:18:52,620 –> 00:18:55,590
کارها به صورت موازی اجرا می شوند و
430
00:18:55,590 –> 00:18:58,640
این تفاوت بین
431
00:18:58,640 –> 00:19:01,740
همزمانی و توازی همزمانی
432
00:19:01,740 –> 00:19:05,160
به طور همزمان چندین کار را انجام می دهد
433
00:19:05,160 –> 00:19:07,710
در عین حال نه در همان زمان
434
00:19:07,710 –> 00:19:09,420
به معنای واقعی کلمه موازی خواهند بود اما
435
00:19:09,420 –> 00:19:11,250
شروع کردن چندین چیز و مجبور است
436
00:19:11,250 –> 00:19:13,380
مدیریت چیزهایی که به طور بالقوه می توانند اجرا شوند
437
00:19:13,380 –> 00:19:16,080
در عین حال توازی در واقع است
438
00:19:16,080 –> 00:19:19,140
وقتی دو چیز همزمان اجرا می شوند
439
00:19:19,140 –> 00:19:22,500
یک کامپیوتر یک CPU که نمی توانید بخشی از آن داشته باشید
440
00:19:22,500 –> 00:19:24,990
lism شما می توانید همزمانی شما نمی توانید
441
00:19:24,990 –> 00:19:30,090
دارای بخشی لیست است که اساساً همین است
442
00:19:30,090 –> 00:19:32,130
تفاوت با حزبی پس این چیست
443
00:19:32,130 –> 00:19:34,410
قسمت لیست نمی تواند درست به نظر برسد بنابراین اگر
444
00:19:34,410 –> 00:19:37,530
ما به این اسلاید برمی گردیم که هیچ وجود ندارد
445
00:19:37,530 –> 00:19:41,690
دو لحظه در زمان که دو وجود دارد
446
00:19:41,690 –> 00:19:44,640
وظایفی که همزمان اجرا می شوند
447
00:19:44,640 –> 00:19:46,190
همیشه وجود دارد
448
00:19:46,190 –> 00:19:51,290
حقوق سیستم عامل تغییر سوئیچینگ
449
00:19:51,290 –> 00:19:55,820
CPU اصلی CPU اصلی نیست
450
00:19:55,820 –> 00:19:58,429
فقط زمان CPU CPU از فرآیند تا
451
00:19:58,429 –> 00:20:00,110
فرآیند و و این معرفی می کند
452
00:20:00,110 –> 00:20:02,419
پیچیدگی ها به دلیل عملیات
453
00:20:02,419 –> 00:20:04,610
سیستم نیز به خودی خود یک برنامه فرآیندی است
454
00:20:04,610 –> 00:20:06,919
بنابراین هر زمان که لحظه ای که
455
00:20:06,919 –> 00:20:08,390
سیستم عامل در حال سوئیچینگ است
456
00:20:08,390 –> 00:20:10,730
زمینه یک فرآیند عملیاتی است
457
00:20:10,730 –> 00:20:13,490
خود سیستم گاهی اوقات متناوب می شود
458
00:20:13,490 –> 00:20:16,450
بدو که جالبه
459
00:20:16,669 –> 00:20:19,429
بنابراین این یک سیستم موازی است که ما داریم
460
00:20:19,429 –> 00:20:23,150
این یک فرضیه دیگر است که ما دو فرضیه داریم
461
00:20:23,150 –> 00:20:26,720
هسته ها اکنون دو CPU و هر CPU داریم
462
00:20:26,720 –> 00:20:28,220
یکی از این خطوط آبی و
463
00:20:28,220 –> 00:20:31,190
اساسا چیزی که اتفاق می افتد این است که
464
00:20:31,190 –> 00:20:34,400
اکنون در این لحظات در زمان داریم
465
00:20:34,400 –> 00:20:36,770
مروارید واقعی چون یک هسته است
466
00:20:36,770 –> 00:20:38,630
مراقبت از این وظایف و کارهای دیگر
467
00:20:38,630 –> 00:20:40,880
اصلی مراقبت از سایر وظایف است
468
00:20:40,880 –> 00:20:46,150
بنابراین در حال حاضر این در واقع موازی سازی شما است
469
00:20:46,150 –> 00:20:48,679
همچنین خواهید دید که در برخی از نقاط
470
00:20:48,679 –> 00:20:51,200
CPU این است که این Idol بسیار رایج است
471
00:20:51,200 –> 00:20:54,950
این بسیار رایج است، بنابراین ما دوباره چه هستیم
472
00:20:54,950 –> 00:20:58,160
گفتن در اینجا این است که CP عامل
473
00:20:58,160 –> 00:21:01,669
سیستم کسی است که تصمیم می گیرد چه زمانی هر یک
474
00:21:01,669 –> 00:21:04,700
از فرآیندهای اجرا خواهد شد آن را دارد
475
00:21:04,700 –> 00:21:08,570
اختیار کامل به کدام CP کدام فرآیند
476
00:21:08,570 –> 00:21:11,120
قرار است در یک زمان معین اجرا شود و
477
00:21:11,120 –> 00:21:13,010
این یک چیز بسیار مهم است
478
00:21:13,010 –> 00:21:15,169
حرکت به جلو و عقب روند
479
00:21:15,169 –> 00:21:21,020
دوربین سیستم عامل و دوباره
480
00:21:21,020 –> 00:21:22,730
تاریخچه سیستم عامل من نوعی
481
00:21:22,730 –> 00:21:24,500
یک نرد در آن اما سیستم عامل
482
00:21:24,500 –> 00:21:26,000
متوجه شدم که انواع مختلف وجود دارد
483
00:21:26,000 –> 00:21:30,770
از وظایف و زمان های متعدد وجود دارد
484
00:21:30,770 –> 00:21:33,679
برش الگوریتم های خلاقانه به منظور
485
00:21:33,679 –> 00:21:36,320
درک زمانی که یک سیستم عامل
486
00:21:36,320 –> 00:21:39,740
باید دسترسی به CPU را به a
487
00:21:39,740 –> 00:21:42,919
زمانی که باید برنامه ریزی شود پردازش شود یا نه
488
00:21:42,919 –> 00:21:46,850
آن را در داخل یا خارج کنید آن را بیرون بیاورید
489
00:21:46,850 –> 00:21:49,940
در و اساسا یک بزرگ وجود دارد
490
00:21:49,940 –> 00:21:52,520
درک وجود دارد مربوط به
491
00:21:52,520 –> 00:21:54,400
ماهیت کاری که در حال اجرا بود
492
00:21:54,400 –> 00:21:58,640
اگر فرآیند ما زمان دسترسی ما را به خاطر بسپارید
493
00:21:58,640 –> 00:21:59,540
است
494
00:21:59,540 –> 00:22:05,300
آیا CP IO سنگین است شما می خواهید به آن یک
495
00:22:05,300 –> 00:22:08,210
یک تن CPU هر زمان که به آن نیاز داشته باشد
496
00:22:08,210 –> 00:22:11,390
بنابراین هر زمان که CPU Mnet است آنها هر زمان
497
00:22:11,390 –> 00:22:15,410
فرآیند باید روی یک وظیفه IO اجرا شود
498
00:22:15,410 –> 00:22:17,720
شما می خواهید به آن فرآیند CPU بدهید
499
00:22:17,720 –> 00:22:19,460
چون میدونی که این کار لازم نیست
500
00:22:19,460 –> 00:22:21,170
طولانی مدت آن را فقط می خواهم به آتش
501
00:22:21,170 –> 00:22:23,480
درخواست به عنوان مثال می خواهم بگویم شما
502
00:22:23,480 –> 00:22:25,370
به این زمان فرآیندی که قرار است بدهید
503
00:22:25,370 –> 00:22:27,470
بگو اوه متشکرم اکنون باید بخوانم
504
00:22:27,470 –> 00:22:29,360
فایل فقط همین
505
00:22:29,360 –> 00:22:31,130
شما CPU را که به آن فرستاده شده اید خارج می کنید
506
00:22:31,130 –> 00:22:32,870
یک فرآیند دیگر و سپس شروع به نوشتن کنید
507
00:22:32,870 –> 00:22:34,610
فایل و این خیلی طول می کشد
508
00:22:34,610 –> 00:22:37,820
زمانی که ما آن را دیدیم، شما چهار نفر دارید
509
00:22:37,820 –> 00:22:41,390
روزها برای خواندن آن قطعه از فایل
510
00:22:41,390 –> 00:22:45,830
برای فرآیند فرآیندهای بسیار متفاوت است
511
00:22:45,830 –> 00:22:48,860
با توجه به ماهیت آنها اگر آنها باند IO هستند
512
00:22:48,860 –> 00:22:51,530
یا CPU محدود به سیستم عامل است
513
00:22:51,530 –> 00:22:53,000
رفتار متفاوتی با آنها خواهد داشت
514
00:22:53,000 –> 00:22:55,100
به آنها اولویت بیشتری بدهید یا نه و و
515
00:22:55,100 –> 00:22:58,400
چیزی که معمولاً ممکن است خلاف واقع باشد
516
00:22:58,400 –> 00:23:02,090
IO محدود IO فرآیندهای سنگین باید دریافت کنند
517
00:23:02,090 –> 00:23:06,460
اولویت بیشتر در CPU آنها مکان ما است
518
00:23:06,460 –> 00:23:10,540
دوباره این بعدا مهم خواهد بود
519
00:23:10,690 –> 00:23:17,380
پس چگونه می خواهید کد ما را بسازید
520
00:23:17,380 –> 00:23:20,870
همزمان یا حتی موازی در حالت ایده آل ما
521
00:23:20,870 –> 00:23:23,480
در مورد فرآیندهای متعدد صحبت می کردند
522
00:23:23,480 –> 00:23:25,130
میتونم بهت بگم میدونی که داری
523
00:23:25,130 –> 00:23:28,490
مشکل شما نیاز به پردازش یک فایل بزرگ است
524
00:23:28,490 –> 00:23:32,090
آن را نمی دانم یک میلیارد ردیف و
525
00:23:32,090 –> 00:23:34,820
زمانی که شما باید آن را پردازش کنید
526
00:23:34,820 –> 00:23:36,500
این کار را انجام دهید که کد خود را می نویسید
527
00:23:36,500 –> 00:23:39,920
برای خط در خطوط بلاه تا شما متوجه شوید
528
00:23:39,920 –> 00:23:42,530
که متوالی است بسیار کند است و
529
00:23:42,530 –> 00:23:46,250
شما می دانید که باید آن برنامه را بسازید
530
00:23:46,250 –> 00:23:48,560
همزمان میتونم جوابتو بدم
531
00:23:48,560 –> 00:23:51,590
در حال حاضر فقط برنامه خود را بنویسید تا شما
532
00:23:51,590 –> 00:23:54,820
می تواند یک پارامتر را در اینجا دریافت کند
533
00:23:54,820 –> 00:23:58,160
و فقط چندین فرآیند ایجاد کنید
534
00:23:58,160 –> 00:24:00,410
نمونه سازی چندین فرآیند به طور همزمان
535
00:24:00,410 –> 00:24:03,670
فایل پردازش زمان از یکی از خط
536
00:24:03,670 –> 00:24:08,750
صفر تا 100 میلیون نمی دانم
537
00:24:08,750 –> 00:24:12,050
اجرای برنامه از 100 میلیون تا 200 میلی متر
538
00:24:12,050 –> 00:24:15,200
گلاب پس از سایه 10 برابر یکسان استفاده کنید
539
00:24:15,200 –> 00:24:18,110
پردازش با قطعات مختلف و شما
540
00:24:18,110 –> 00:24:20,360
درست انجام شد که جواب خوبی است
541
00:24:20,360 –> 00:24:22,460
البته کار را انجام خواهد داد
542
00:24:22,460 –> 00:24:23,660
که می خواهید همه چیز را اجرا کنید
543
00:24:23,660 –> 00:24:26,720
همزمان در برنامه شما می خواستید
544
00:24:26,720 –> 00:24:29,360
برای ایجاد یک برنامه که می تواند گسترش یابد
545
00:24:29,360 –> 00:24:31,670
کار آن در چندین رشته یا
546
00:24:31,670 –> 00:24:34,700
فرآیندها چیزی است که ما می خواهیم انجام دهیم
547
00:24:34,700 –> 00:24:37,520
قسمت اول می توانیم بگوییم داخل
548
00:24:37,520 –> 00:24:41,240
همزمانی برنامه کار خواهد کرد
549
00:24:41,240 –> 00:24:42,650
با تهدید و این چیزی است که ما می خواهیم
550
00:24:42,650 –> 00:24:46,730
دوباره در مورد هدف صحبت کنید
551
00:24:46,730 –> 00:24:49,220
قرار است بسازد، قرار است باشد
552
00:24:49,220 –> 00:24:52,540
تبدیل یک کد ترتیبی به a
553
00:24:52,540 –> 00:24:54,860
کد موازی بالقوه پس بیایید ببینیم
554
00:24:54,860 –> 00:24:57,650
یک مثال فرض کنید باید بکشیم
555
00:24:57,650 –> 00:24:59,780
داده های سه وب سایت مختلف آن است
556
00:24:59,780 –> 00:25:02,060
یک وب سایت کند و دو ثانیه طول می کشد
557
00:25:02,060 –> 00:25:05,180
برای هر یک از آن درخواست ها در یک
558
00:25:05,180 –> 00:25:06,980
کدهای سنتی اینها سنتی هستند
559
00:25:06,980 –> 00:25:09,530
کد ما همه چیز را ترتیبی می کنیم
560
00:25:09,530 –> 00:25:11,660
دو ثانیه طول می کشد تا اولین مورد را دریافت کنید
561
00:25:11,660 –> 00:25:13,430
وب سایت دو ثانیه دو دیگر است
562
00:25:13,430 –> 00:25:15,290
چند ثانیه برای دریافت دومی دو تا دیگر
563
00:25:15,290 –> 00:25:16,970
چند ثانیه تا در مجموع نفر سوم را دریافت کنید
564
00:25:16,970 –> 00:25:21,010
حداقل C شش ثانیه خواهد بود اگر
565
00:25:21,010 –> 00:25:23,300
اگر مجبور باشید می تواند حتی بیشتر باشد
566
00:25:23,300 –> 00:25:26,780
ترکیب آن حداقل شش ثانیه به
567
00:25:26,780 –> 00:25:30,050
برنامه متوالی و این را پردازش کنید
568
00:25:30,050 –> 00:25:31,880
اولین نمایش تصویری وب است
569
00:25:31,880 –> 00:25:33,950
سایت کلمه دوم وب سایت سوم و
570
00:25:33,950 –> 00:25:37,250
در پایان پردازش بنابراین شما نمی توانید
571
00:25:37,250 –> 00:25:40,490
بخش کلیدی اینجا این است که شما نیستید
572
00:25:40,490 –> 00:25:42,410
واکشی وب سایت دوم را شروع نکنید
573
00:25:42,410 –> 00:25:45,200
تا زمانی که وب اول را تمام نکرده باشید
574
00:25:45,200 –> 00:25:48,320
سایت این ایده چند رشته ای است
575
00:25:48,320 –> 00:25:51,710
قرار است معاشرت یا شروع شود
576
00:25:51,710 –> 00:25:54,380
همه چیز به یکباره درست است پس همه چیز
577
00:25:54,380 –> 00:25:57,560
می توان امیدوار بود به صورت موازی اجرا شود و سپس
578
00:25:57,560 –> 00:25:59,540
رسیدن به یک نقطه مشترک برای همگام سازی
579
00:25:59,540 –> 00:26:01,790
همه چیز پشت این ایده است
580
00:26:01,790 –> 00:26:03,980
چند رشته ای پس اگر بتوانیم این کار را انجام دهیم اگر
581
00:26:03,980 –> 00:26:07,550
ما می توانیم چندین رشته و آنها را بچرخانیم
582
00:26:07,550 –> 00:26:10,100
همه به طور همزمان یا موازی اجرا می شوند
583
00:26:10,100 –> 00:26:12,860
ما ابتدا منتظر همه آنها خواهیم بود
584
00:26:12,860 –> 00:26:14,300
برای تمام کردن آن حدود دو خواهد بود
585
00:26:14,300 –> 00:26:15,560
ثانیه و سپس ما می توانیم انجام دهیم
586
00:26:15,560 –> 00:26:20,360
ترکیبی در TM کد ما خواهد بود
587
00:26:20,360 –> 00:26:22,580
به نظر می رسد ایده آل است آن را به نظر می رسد
588
00:26:22,580 –> 00:26:24,200
چیزی شبیه به این در حال حاضر واقعیت است
589
00:26:24,200 –> 00:26:25,810
این فقط شبه کد است
590
00:26:25,810 –> 00:26:28,660
اما ما انتزاع را خواهیم دید
591
00:26:28,660 –> 00:26:30,280
یک تهدید برای درک کمی آن
592
00:26:30,280 –> 00:26:32,290
کمی بهتر است که ماژول threading چیست
593
00:26:32,290 –> 00:26:34,360
ما استفاده خواهیم کرد و من فقط استفاده خواهم کرد
594
00:26:34,360 –> 00:26:36,820
ابتدا یک معرفی خیلی سریع به شما می دهد
595
00:26:36,820 –> 00:26:40,510
ما می خواهیم بگوییم که کدی در آن وجود دارد
596
00:26:40,510 –> 00:26:42,790
یک دفترچه یادداشت مشتری که ما میخواهیم آن را انجام دهیم
597
00:26:42,790 –> 00:26:44,350
معرفی ساده و سپس ما می خواهیم
598
00:26:44,350 –> 00:26:46,630
قسمت های مهم تر را حفاری کنید
599
00:26:46,630 –> 00:26:48,640
همگام سازی و همه چیزهایی که من می خواهم
600
00:26:48,640 –> 00:26:51,850
شما به یاد داشته باشید که ما در حال کار در یک
601
00:26:51,850 –> 00:26:54,340
راه اندازی برنامه نویسی مقدماتی درست است
602
00:26:54,340 –> 00:26:57,190
ایجاد کد خودمان برنامه ما آن است
603
00:26:57,190 –> 00:26:58,750
از چندین تهدید استفاده خواهد کرد و
604
00:26:58,750 –> 00:27:01,060
امیدواریم این کار را انجام دهیم
605
00:27:01,060 –> 00:27:03,520
همزمان پس بیایید مستقیماً پرش کنیم
606
00:27:03,520 –> 00:27:06,850
وارد کد ما شده و بیایید کار را شروع کنیم
607
00:27:06,850 –> 00:27:09,760
با تهدید بالاخره وقت آن است که ببینیم
608
00:27:09,760 –> 00:27:12,700
برخی از کدهای واقعی پایتون که ما انجام داده ایم
609
00:27:12,700 –> 00:27:14,830
کل مقدمه مفهومی در مورد
610
00:27:14,830 –> 00:27:17,430
سیستم عامل های معماری کامپیوتر
611
00:27:17,430 –> 00:27:20,710
تهدیدات را به صورت مفهومی پردازش می کند اما اکنون
612
00:27:20,710 –> 00:27:22,810
وقت آن است که در مورد کد واقعی صحبت کنیم
613
00:27:22,810 –> 00:27:26,620
ایجاد موضوعات آنها را وادار به اجرای و غیره می کند
614
00:27:26,620 –> 00:27:28,900
چند نکته مهم اینجا هستیم
615
00:27:28,900 –> 00:27:31,540
از کلاس thread این استفاده می کنم
616
00:27:31,540 –> 00:27:35,230
ما کلاس اصلی ما خواهیم بود
617
00:27:35,230 –> 00:27:37,120
با استفاده از این زوج اول
618
00:27:37,120 –> 00:27:38,890
دروسی که در آنها ایجاد خواهیم کرد
619
00:27:38,890 –> 00:27:41,020
رشته هایی که ما آنها را نمونه سازی می کنیم و
620
00:27:41,020 –> 00:27:43,060
ما آنها را شروع خواهیم کرد
621
00:27:43,060 –> 00:27:44,710
آنها در حال اجرا هستند و ما در حال تجزیه و تحلیل هستیم
622
00:27:44,710 –> 00:27:47,350
آنها وضعیت خود را بررسی می کنند و غیره اما
623
00:27:47,350 –> 00:27:48,820
همه چیز در این اتفاق خواهد افتاد
624
00:27:48,820 –> 00:27:51,820
کلاس thread و این کلاس رشته است
625
00:27:51,820 –> 00:27:54,520
موجود در ماژول threading بنابراین
626
00:27:54,520 –> 00:27:56,050
این یک چیز بسیار مهم است زیرا
627
00:27:56,050 –> 00:27:58,420
ما همچنین یک ماژول رشته زیر خط داریم
628
00:27:58,420 –> 00:28:01,960
در پایتون 3 اما این یک سطح بسیار پایین است
629
00:28:01,960 –> 00:28:04,630
ماژولی که نباید از ما استفاده کنید
630
00:28:04,630 –> 00:28:06,850
از آن استفاده نکن من هرگز از آن استفاده نکرده ام
631
00:28:06,850 –> 00:28:09,250
ماژول threading یکی از ماژول هایی است که از آن استفاده می کند
632
00:28:09,250 –> 00:28:11,170
زیر نخ زیر خط و
633
00:28:11,170 –> 00:28:14,020
سطح بسیار بالایی را برای ما فراهم می کند
634
00:28:14,020 –> 00:28:17,020
رابط مناسب برای ما برای ایجاد و
635
00:28:17,020 –> 00:28:19,900
تهدیدها را دستکاری کنید تا کلاس رشته
636
00:28:19,900 –> 00:28:21,610
دوباره این یک کلاس اصلی است
637
00:28:21,610 –> 00:28:23,050
مورد مهمی که از آن استفاده خواهیم کرد
638
00:28:23,050 –> 00:28:25,360
ایجاد و شروع موضوعات زمانی که شما
639
00:28:25,360 –> 00:28:27,370
آن را ایجاد کنید که از یک هدف عبور خواهید کرد
640
00:28:27,370 –> 00:28:29,800
این هدف همان تابعی است که در آن وجود دارد
641
00:28:29,800 –> 00:28:32,470
در یک تاپیک جداگانه اجرا می شود
642
00:28:32,470 –> 00:28:36,580
درست است پس به یاد داشته باشید که وقتی دارید
643
00:28:36,580 –> 00:28:39,490
فرآیند اصلی فرآیند اصلی شما شما هستید
644
00:28:39,490 –> 00:28:42,730
یک تاپیک جداگانه ایجاد خواهد شد که
645
00:28:42,730 –> 00:28:45,909
این موضوع توسط خودش اداره می شود
646
00:28:45,909 –> 00:28:48,340
به نوعی قابل فراخوانی نیاز دارد
647
00:28:48,340 –> 00:28:49,960
برخی از اقدامات برای انجام بنابراین ما می خواهیم
648
00:28:49,960 –> 00:28:52,750
بگوییم کدام عمل را میخواهیم انجام دهیم یا انجام دهیم
649
00:28:52,750 –> 00:28:55,480
بر اساس این هدف اجرا کنید، بنابراین ما می خواهیم
650
00:28:55,480 –> 00:28:58,750
ابتدا تاپیک را شروع کنید، قرار است
651
00:28:58,750 –> 00:29:02,769
اساسا این ظرف را ایجاد کنید
652
00:29:02,769 –> 00:29:04,390
از موضوع می گویند این است
653
00:29:04,390 –> 00:29:07,149
موضوع را بگذرانیم و ما از آن عبور خواهیم کرد
654
00:29:07,149 –> 00:29:08,740
هدف بنابراین در این مورد ما دریافت می کنیم
655
00:29:08,740 –> 00:29:11,110
گفتن هدف برابر با کارگران ساده است
656
00:29:11,110 –> 00:29:13,630
درست می داند که باید آن را اجرا کند
657
00:29:13,630 –> 00:29:15,639
تابع ساده کارگر بیایید بگوییم
658
00:29:15,639 –> 00:29:18,039
تابع ساده کارگر رمزگشایی ساده
659
00:29:18,039 –> 00:29:20,950
کارگر ساده اینجا و بعد تعریف می شود
660
00:29:20,950 –> 00:29:23,380
ما همین لحظه موضوع را شروع می کنیم
661
00:29:23,380 –> 00:29:26,080
ما شروع به موضوع آن زمانی است که در واقع
662
00:29:26,080 –> 00:29:27,850
موضوع شروع می شود و در حال اجرا است
663
00:29:27,850 –> 00:29:31,510
وظیفه آن بستگی به عملکرد شما دارد
664
00:29:31,510 –> 00:29:33,970
در مورد تابع هدف چیست
665
00:29:33,970 –> 00:29:36,610
انجام می دهد و آن را می گویند اگر
666
00:29:36,610 –> 00:29:39,190
تاپیک ها تمام می شود Adam I have not
667
00:29:39,190 –> 00:29:41,320
به طور خودکار در نقطه ای به پایان رسید یا
668
00:29:41,320 –> 00:29:43,299
برای همیشه اجرا می شود و داشتن آن بسیار رایج است
669
00:29:43,299 –> 00:29:46,510
موضوعاتی که در اینجا یک حقیقت وحشی دارند
670
00:29:46,510 –> 00:29:48,460
اساسا ما می خواهیم یک پشتی داشته باشیم a
671
00:29:48,460 –> 00:29:50,799
پس زمینه که در حال بررسی است
672
00:29:50,799 –> 00:29:52,659
برخی از وضعیت تا زمانی که چنگ خوب ما
673
00:29:52,659 –> 00:29:54,730
برنامه در آن صورت شما زنده است
674
00:29:54,730 –> 00:29:56,740
ممکن است در اینجا یکی را ببینیم
675
00:29:56,740 –> 00:29:58,779
به اجرای این تاپیک برای همیشه ادامه دهید
676
00:29:58,779 –> 00:30:00,130
قرار است در پس زمینه باشد
677
00:30:00,130 –> 00:30:02,889
انجام برخی از محاسبات برخی از بررسی در
678
00:30:02,889 –> 00:30:05,019
پس زمینه اما باز هم قسمت مهم
679
00:30:05,019 –> 00:30:07,330
در اینجا ما کل فرآیند خود را داریم
680
00:30:07,330 –> 00:30:09,070
فرآیند پایتون هستند و ما این کار را خواهیم کرد
681
00:30:09,070 –> 00:30:11,110
چند موضوع ایجاد کنید، فرض کنید
682
00:30:11,110 –> 00:30:12,639
با من، ما چندین مورد را معامله می کنیم
683
00:30:12,639 –> 00:30:15,039
موضوعاتی که آنها را به سادگی ایجاد می کنند
684
00:30:15,039 –> 00:30:19,059
مثال T 1 T 2 T 3 برابر است با نخ روی a
685
00:30:19,059 –> 00:30:21,580
هدف ما از نوشتن هدف عبور می کنیم
686
00:30:21,580 –> 00:30:23,769
که به تابعی در آن اشاره می کند
687
00:30:23,769 –> 00:30:25,809
این مورد کارگر ساده درست است
688
00:30:25,809 –> 00:30:28,750
نخ دارگل اونجا کهنه شده
689
00:30:28,750 –> 00:30:31,450
آیا شروع به اجرا نکرده است
690
00:30:31,450 –> 00:30:32,980
وقتی ما شروع به دویدن می کند
691
00:30:32,980 –> 00:30:35,830
در واقع روش شروع را در آن تداعی می کند
692
00:30:35,830 –> 00:30:38,500
لحظه ای که موضوع شروع می شود
693
00:30:38,500 –> 00:30:40,419
عملکرد پس بیایید در واقع این کار را انجام دهیم
694
00:30:40,419 –> 00:30:42,909
کد در اینجا من می خواهم ساده را تعریف کنم
695
00:30:42,909 –> 00:30:44,710
تابع کارگر من نمونه می خواهم
696
00:30:44,710 –> 00:30:46,990
موضوع به یاد داشته باشید هیچ اتفاقی نمی افتد
697
00:30:46,990 –> 00:30:49,270
چه چیزی می توانید در اینجا انتظار داشته باشید
698
00:30:49,270 –> 00:30:49,810
رخ دادن
699
00:30:49,810 –> 00:30:51,970
که وقتی ما موضوع را از جایی که ما شروع می کنیم
700
00:30:51,970 –> 00:30:53,710
در واقع موضوع شروع شده که ما خواهیم دید
701
00:30:53,710 –> 00:30:57,430
هاله ای که چاپ شده است برای آن می لغزد
702
00:30:57,430 –> 00:30:59,890
دو ثانیه و ما هاله را خواهیم دید
703
00:30:59,890 –> 00:31:02,350
آن را چاپ کنید تا موضوع را شروع کنم
704
00:31:02,350 –> 00:31:04,900
ما سلام را می بینیم ما منتظر می مانیم و
705
00:31:04,900 –> 00:31:08,410
اکنون شما جهان را می بینید اما مهم است
706
00:31:08,410 –> 00:31:11,800
بخشی از اینجا این است که من نمی توانم هنوز یک
707
00:31:11,800 –> 00:31:15,100
کنترل کامل در حالی که این موضوع وجود دارد
708
00:31:15,100 –> 00:31:17,200
در حال اجرا، پس اجازه دهید من هم این چیز را برای
709
00:31:17,200 –> 00:31:18,910
به عنوان مثال پنج ثانیه من واقعا می خواهم
710
00:31:18,910 –> 00:31:21,490
تابعی را که می خواهم مرتبط کنم تعریف کنید
711
00:31:21,490 –> 00:31:23,620
موضوعی که در اینجا به صورت ساده انجام خواهم داد
712
00:31:23,620 –> 00:31:27,040
محاسبه دو به علاوه دو و من می خواهم
713
00:31:27,040 –> 00:31:29,830
یک تاپیک بزن و من میتونم ادامه بدم
714
00:31:29,830 –> 00:31:32,530
کار بر روی محاسبات من که
715
00:31:32,530 –> 00:31:34,570
موضوع در پس زمینه در حال اجرا است
716
00:31:34,570 –> 00:31:36,820
این مورد درست در حال لغزش است اما در برخی موارد
717
00:31:36,820 –> 00:31:39,250
نقطه آنجا که شما بروید آن را برگرداند
718
00:31:39,250 –> 00:31:43,180
آن تابع نهایی را که داشت اجرا کنید و
719
00:31:43,180 –> 00:31:45,580
آن را در این در این لحظه خاص
720
00:31:45,580 –> 00:31:47,230
تاپیک تمام شده است، ما می گوییم که خواهیم دید
721
00:31:47,230 –> 00:31:49,870
در مورد بله یک روش زنده است
722
00:31:49,870 –> 00:31:52,930
موضوع درست از بین رفت و همین الان کامل شد
723
00:31:52,930 –> 00:31:57,910
کار می کند و اکنون به طور معمول متوقف شده است
724
00:31:57,910 –> 00:32:00,130
کار معمولی ایجاد چندین مورد است
725
00:32:00,130 –> 00:32:02,260
موضوعات همه با هم بنابراین در این مورد ما
726
00:32:02,260 –> 00:32:03,700
همه این تاپیک ها را اینجا دارم
727
00:32:03,700 –> 00:32:06,400
یک نقطه ویرگول در اینجا قرار دهید تا هیچ کدام را نبینیم
728
00:32:06,400 –> 00:32:08,980
خروجی و من تمام رشته ها را شروع می کنم و
729
00:32:08,980 –> 00:32:12,550
نخ برای مدتی شروع به لیز خوردن می کند
730
00:32:12,550 –> 00:32:14,230
ما در واقع مقداری تصادفی تولید می کنیم
731
00:32:14,230 –> 00:32:15,880
ارزش لغزش برای آن زمان و
732
00:32:15,880 –> 00:32:18,160
دوباره کار می کند همه چیز روی آن اتفاق می افتد
733
00:32:18,160 –> 00:32:20,950
پس زمینه من هنوز کنترل کامل دارم
734
00:32:20,950 –> 00:32:24,430
در تاپیک اصلی هر کاری می خواهم انجام دهم
735
00:32:24,430 –> 00:32:27,670
بیایید این کار را دوباره انجام دهیم من می توانم به دویدن ادامه دهم
736
00:32:27,670 –> 00:32:31,200
این چیز و نخ در حال خروجی است
737
00:32:31,200 –> 00:32:35,410
نتیجه پس بیایید با جزئیات بیشتر صحبت کنیم
738
00:32:35,410 –> 00:32:38,980
در مورد وضعیت موضوع همانطور که به شما گفتم چه زمانی
739
00:32:38,980 –> 00:32:42,310
ما یک رشته ایجاد می کنیم، آنجا کهنه است
740
00:32:42,310 –> 00:32:45,160
میتوانیم بگوییم زنده است، نه اینطور نیست
741
00:32:45,160 –> 00:32:46,330
هنوز زنده است
742
00:32:46,330 –> 00:32:49,270
آنجا آماده است اما زنده نیست
743
00:32:49,270 –> 00:32:51,550
لحظه ای که من موضوع را شروع کردم
744
00:32:51,550 –> 00:32:53,530
تاپیک زنده است و شما خواهید دید که آیا
745
00:32:53,530 –> 00:32:58,150
یک روش زنده چیزی درست است
746
00:32:58,150 –> 00:33:00,190
مهم این است که ما را به یاد داشته باشیم
747
00:33:00,190 –> 00:33:02,380
یک موضوع اصلی را شروع کنید
748
00:33:02,380 –> 00:33:04,120
درست زمانی که تهدید کارگر را شروع کردیم
749
00:33:04,120 –> 00:33:06,520
برای کنار گذاشتن آن موضوع اصلی هنوز دارد
750
00:33:06,520 –> 00:33:09,580
کنترل کامل آنچه اتفاق می افتد اگر بخواهید
751
00:33:09,580 –> 00:33:12,160
مکث کنید و منتظر بمانید تا تهدید شروع شود
752
00:33:12,160 –> 00:33:14,680
برای متوقف کردن یا به پایان رساندن بنابراین در واقع اجازه دهید
753
00:33:14,680 –> 00:33:17,710
می گویند شما این روند را درست و و
754
00:33:17,710 –> 00:33:20,710
شما در حال جمع آوری داده ها یا هر چیز دیگری هستید و
755
00:33:20,710 –> 00:33:22,690
شما همه این تاپیک ها را درست شروع کردید
756
00:33:22,690 –> 00:33:24,550
همه با داده ها کار می کنند اما شما نیاز دارید
757
00:33:24,550 –> 00:33:27,670
برای توقف و لغو مکث تا همه آنها
758
00:33:27,670 –> 00:33:30,580
پایان و یک بار همه آنها هستند
759
00:33:30,580 –> 00:33:33,130
تمام شد اکنون می توانید داده ها را در آن پردازش کنید
760
00:33:33,130 –> 00:33:36,250
در آن صورت شما می خواهید موضوع اصلی به آن بپردازید
761
00:33:36,250 –> 00:33:38,530
بلاکی که می خواهید رشته اصلی را بلاک کنید
762
00:33:38,530 –> 00:33:42,940
صبر کنید تا آن رشته یا چند تا
763
00:33:42,940 –> 00:33:45,160
تهدیدها را تمام می کنند و این کار را انجام می دهند
764
00:33:45,160 –> 00:33:47,130
ما روش Join را داریم، بنابراین من می خواهم
765
00:33:47,130 –> 00:33:49,870
نمونه سازی همان موضوع دوباره من هستم
766
00:33:49,870 –> 00:33:51,700
آن را شروع می کنم، من مستقیماً می پرم
767
00:33:51,700 –> 00:33:54,640
بپیوندید و همانطور که می بینید آنها من هستند
768
00:33:54,640 –> 00:33:58,090
موضوع اصلی در حال حاضر متوقف شده است
769
00:33:58,090 –> 00:34:01,840
متوقف شد ما منتظر آنها هستیم
770
00:34:01,840 –> 00:34:04,330
موضوع شروع کردیم تا جوین را تمام کنیم
771
00:34:04,330 –> 00:34:07,510
روش دوباره چیزی است که می خواهد مکث کند
772
00:34:07,510 –> 00:34:11,020
تاپیک اصلی و منتظر اون تاپیک باشید
773
00:34:11,020 –> 00:34:14,230
یا مجموعه ای از موضوعات همه آنها داده نشده است
774
00:34:14,230 –> 00:34:16,780
زمانی که تهدید به پایان رسیده است
775
00:34:16,780 –> 00:34:20,469
چندین روش تمام شده یک را افزایش می دهد
776
00:34:20,469 –> 00:34:22,750
خطای زمان اجرا در این مورد موضوع
777
00:34:22,750 –> 00:34:24,909
قبلا متوقف شده است یا متوقف شده است
778
00:34:24,909 –> 00:34:26,379
در واقع قبلاً تمام شده است
779
00:34:26,379 –> 00:34:29,230
بنابراین نمی توان آن را دوباره شروع کرد، شما باید
780
00:34:29,230 –> 00:34:31,600
یک نمونه جدید از موضوع if ایجاد کنید
781
00:34:31,600 –> 00:34:34,830
می خواهید دوباره همان کار را شروع کنید
782
00:34:34,830 –> 00:34:37,750
بیایید در مورد هویت موضوع و
783
00:34:37,750 –> 00:34:39,879
این می تواند برای رفع اشکال بسیار مفید باشد
784
00:34:39,879 –> 00:34:41,770
برای درک بهتر کد خود یا به
785
00:34:41,770 –> 00:34:43,918
کد خود را به روشی بهتر سازماندهی کنید
786
00:34:43,918 –> 00:34:48,699
هویت موضوع به این معنی است که ما می توانیم a را تنظیم کنیم
787
00:34:48,699 –> 00:34:52,300
نام رشته ما را درست می توانیم در این
788
00:34:52,300 –> 00:34:54,429
در صورتی که رشته نام تنظیم شده باشد
789
00:34:54,429 –> 00:34:56,290
به طور خودکار اما اگر دوباره به شما نشان دهم
790
00:34:56,290 –> 00:34:58,330
سازنده نام رشته
791
00:34:58,330 –> 00:35:00,940
شما خواهید دید که نام ها برابر است
792
00:35:00,940 –> 00:35:03,220
این مورد به طور پیش فرض هیچ کدام است
793
00:35:03,220 –> 00:35:06,100
کلاس thread یک ماژول threading قرار است
794
00:35:06,100 –> 00:35:08,290
آن را اجرا کنید نام تصادفی نیست اما یک
795
00:35:08,290 –> 00:35:11,710
نام ترتیبی موضوع چیزی در
796
00:35:11,710 –> 00:35:15,630
به هر موضوع یک موضوع منحصر به فرد اختصاص داده می شود
797
00:35:15,630 –> 00:35:18,490
شناسه یک شناسه منحصربهفرد که میخواهیم بگوییم
798
00:35:18,490 –> 00:35:20,770
در این مورد فقط در یک رویداد شناسایی می کنم، بنابراین من هستم
799
00:35:20,770 –> 00:35:23,650
در این مورد می گویند رویداد
800
00:35:23,650 –> 00:35:27,609
پارامتر یا ویژگی فقط یک بار شناخته شده است
801
00:35:27,609 –> 00:35:30,609
من یک تاپیک راه اندازی می کنم که آن را خواهیم دید
802
00:35:30,609 –> 00:35:35,200
اکنون به یک مقدار معین تنظیم شده است
803
00:35:35,200 –> 00:35:38,440
اکنون که تهدید از آنجا شروع شده است
804
00:35:38,440 –> 00:35:42,070
نقطه آن را دارد این ID که فقط
805
00:35:42,070 –> 00:35:44,140
عددی برای شناسایی آن
806
00:35:44,140 –> 00:35:46,900
رشته خاص هیچ دو موضوعی وجود ندارد
807
00:35:46,900 –> 00:35:49,510
می خواهم همان شناسه درست است که یک
808
00:35:49,510 –> 00:35:51,970
مهم است که ما می توانیم خودمان را راه اندازی کنیم
809
00:35:51,970 –> 00:35:53,589
نام سفارشی با ارزش شروع
810
00:35:53,589 –> 00:35:57,460
موضوع و ما در واقع می توانیم با آن مشورت کنیم
811
00:35:57,460 –> 00:35:59,830
اطلاعات از موضوع اصلی ما می توانیم
812
00:35:59,830 –> 00:36:02,170
بررسی کنید نام رشته ها در آن چیست
813
00:36:02,170 –> 00:36:05,080
مورد خاص یا شناسه چیزی
814
00:36:05,080 –> 00:36:06,790
جالب این است که ما نیز می توانیم بررسی کنیم
815
00:36:06,790 –> 00:36:09,970
این مقادیر از داخل موضوع بنابراین
816
00:36:09,970 –> 00:36:12,040
اینجا یک چیز مفهومی مهم است
817
00:36:12,040 –> 00:36:13,900
و اجازه دهید دوباره به نقاشی خود برگردم
818
00:36:13,900 –> 00:36:17,770
هیئت مدیره اگر من این است من به یاد داشته باشید
819
00:36:17,770 –> 00:36:19,930
جعبه بیرونی فرآیند پایتون من است
820
00:36:19,930 –> 00:36:22,869
جعبه داخلی رشته پایتون است
821
00:36:22,869 –> 00:36:25,390
که یک تابع داده شده را اجرا می کند
822
00:36:25,390 –> 00:36:28,420
کارگر ساده در این مورد می توانیم ایجاد کنیم
823
00:36:28,420 –> 00:36:30,010
چند تا از این تاپیک ها درسته پس من هستم
824
00:36:30,010 –> 00:36:32,050
بیایید بگوییم همه این موضوعات را تعریف می کنیم
825
00:36:32,050 –> 00:36:34,810
ما سه رشته داریم و همه آنها هستند
826
00:36:34,810 –> 00:36:37,510
اشاره می کند که همه آنها در حال اجرا هستند
827
00:36:37,510 –> 00:36:41,619
همان عملکرد درست راه ما
828
00:36:41,619 –> 00:36:45,550
تعریف یک تابع فقط با تعریف است
829
00:36:45,550 –> 00:36:47,140
تابع در حال اجرا است
830
00:36:47,140 –> 00:36:49,599
موضوع فقط با تعریف ساده است
831
00:36:49,599 –> 00:36:51,280
عملکرد درست است من چیزی نمی گویم
832
00:36:51,280 –> 00:36:53,800
دیوانه اینجا فقط اصول اولیه درست است فقط یک
833
00:36:53,800 –> 00:36:56,230
تابع پایتون معمولی اما آنچه من می خواهم
834
00:36:56,230 –> 00:36:58,359
اینجا بگویم که ما این کار را نمی کنیم
835
00:36:58,359 –> 00:37:01,330
تابع ترجیح می دهد بداند کدام رشته
836
00:37:01,330 –> 00:37:03,670
همان عملکرد را اجرا خواهد کرد
837
00:37:03,670 –> 00:37:06,400
باید به گونه ای تعریف شود که هست
838
00:37:06,400 –> 00:37:09,130
برای همه رشته هایی که ایجاد می کنیم مفید است
839
00:37:09,130 –> 00:37:11,500
دو سه هزار رشته آنها می توانند
840
00:37:11,500 –> 00:37:15,010
همه یک کد پایتون را در فرم اجرا می کنند
841
00:37:15,010 –> 00:37:17,980
از آن تابع بنابراین منظور من از این چیست
842
00:37:17,980 –> 00:37:21,730
این است که اگر ما نیاز به استفاده از تابع است
843
00:37:21,730 –> 00:37:23,650
نام تاپیک و اگر جدید کنیم
844
00:37:23,650 –> 00:37:24,250
نیاز داشتن
845
00:37:24,250 –> 00:37:27,250
از شناسه رشته ای که باید بسازیم استفاده کنیم
846
00:37:27,250 –> 00:37:29,830
به اندازه کافی عمومی است که هر موضوع
847
00:37:29,830 –> 00:37:32,710
در اینجا به طور بالقوه به صورت موازی اجرا می شود
848
00:37:32,710 –> 00:37:36,960
درست یا همزمان به بیان دقیق تر
849
00:37:36,960 –> 00:37:40,690
همه آنها یک کد را اجرا می کنند اما
850
00:37:40,690 –> 00:37:42,820
همه آنها شناسه های متفاوتی خواهند داشت و
851
00:37:42,820 –> 00:37:45,190
این چیزی است که ما با آن به دست خواهیم آورد
852
00:37:45,190 –> 00:37:48,700
این دو تابع بسیار مفید در حال حاضر
853
00:37:48,700 –> 00:37:51,730
thread و thread و گرفتن تورفتگی که
854
00:37:51,730 –> 00:37:56,200
روش های دینامیکی عمومی هستند که هستند
855
00:37:56,200 –> 00:38:00,640
می خواهم به شما خاص اجازه دهید من
856
00:38:00,640 –> 00:38:05,350
این چیزی را که قرار است به شما بدهد متوقف کنید
857
00:38:05,350 –> 00:38:11,890
ارزش خاص نخ
858
00:38:11,890 –> 00:38:13,210
خودش و این مرد به شما می دهد
859
00:38:13,210 –> 00:38:15,670
کل موضوع جریان موضوع
860
00:38:15,670 –> 00:38:16,960
تابع موضوع فعلی که قرار است بدهد
861
00:38:16,960 –> 00:38:19,330
شما تمام موضوع را به خودی خود در می آورید
862
00:38:19,330 –> 00:38:21,730
که سپس می توانید نام آن را به عنوان بپرسید
863
00:38:21,730 –> 00:38:23,800
ما اینجا انجام می دهیم t-این نام و شما
864
00:38:23,800 –> 00:38:27,190
همچنین می توانند شناسه خود را دریافت کنند که
865
00:38:27,190 –> 00:38:30,520
تولید شد و در آن صورت فقط دریافت کنید
866
00:38:30,520 –> 00:38:32,650
به پایان می رسد، آن شماره خواهد بود که ما داریم
867
00:38:32,650 –> 00:38:35,680
بنابراین بیایید در واقع از همان کد استفاده کنیم
868
00:38:35,680 –> 00:38:38,260
ایجاد سه موضوع مختلف سه
869
00:38:38,260 –> 00:38:40,270
موضوعات مختلف هر کدام با یک سفارشی
870
00:38:40,270 –> 00:38:41,770
نامی که ما ارائه می کنیم و می خواهیم
871
00:38:41,770 –> 00:38:45,010
همه آنها را شروع کنید و اکنون ما منتظریم
872
00:38:45,010 –> 00:38:48,820
برای آنها به پایان برسد تا حباب ها شکوفا شوند
873
00:38:48,820 –> 00:38:50,860
باترکاپ همه آنها تمام شد و چه زمانی
874
00:38:50,860 –> 00:38:53,320
آنها شروع کردند هر کدام به صورت داخلی داشتند
875
00:38:53,320 –> 00:38:57,760
یکی از آنها هیادهای خود را داشتند
876
00:38:57,760 –> 00:39:00,790
تا الان با خیلی ساده کار کردیم
877
00:39:00,790 –> 00:39:02,800
توابعی که هیچ کدام را دریافت نمی کنند
878
00:39:02,800 –> 00:39:04,690
پارامترهایی که از آنجا شروع می شود و
879
00:39:04,690 –> 00:39:06,580
آنها در حال اجرا هستند و این نیست
880
00:39:06,580 –> 00:39:09,460
البته واقعی معمولا یک تابع
881
00:39:09,460 –> 00:39:11,770
دریافت پارامترها بسیار ساده است
882
00:39:11,770 –> 00:39:13,660
پارامترها را به کلاس thread به
883
00:39:13,660 –> 00:39:16,030
آرگومان هایی را بگذرانیم که می توانیم بگوییم این یک است
884
00:39:16,030 –> 00:39:17,860
کار با آن کمی دشوارتر است
885
00:39:17,860 –> 00:39:19,720
موقعیت های پویا مانند برای مثال
886
00:39:19,720 –> 00:39:23,590
آرگومان های کلمه کلیدی یا بله از انواع مختلف
887
00:39:23,590 –> 00:39:24,910
از پارامترهایی که باید ایجاد کنیم
888
00:39:24,910 –> 00:39:27,940
به صورت پویا بر اساس موارد استفاده و
889
00:39:27,940 –> 00:39:29,560
به همین دلیل یکی از دلایلی است که من
890
00:39:29,560 –> 00:39:31,420
کتابخانه موازی را ایجاد کرده اند اما
891
00:39:31,420 –> 00:39:32,710
ما در مورد آن بیشتر صحبت خواهیم کرد
892
00:39:32,710 –> 00:39:34,840
بعداً فعلاً به شما می گویم نشان دهید
893
00:39:34,840 –> 00:39:36,880
شما چقدر ساده می گذرد
894
00:39:36,880 –> 00:39:38,860
آرگومان های یک تابع داده شده در این
895
00:39:38,860 –> 00:39:40,780
در صورتی که باید کارگر ساده را پیدا کنیم
896
00:39:40,780 –> 00:39:43,420
عملکرد دوباره که اکنون یک زمان دریافت می کند
897
00:39:43,420 –> 00:39:44,260
لیز خوردن
898
00:39:44,260 –> 00:39:46,480
تا کنون ما همیشه این مورد را تعریف کرده ایم
899
00:39:46,480 –> 00:39:48,190
به طور تصادفی چقدر تابع بود
900
00:39:48,190 –> 00:39:49,900
لیز خوردن در این مورد ما می گذریم
901
00:39:49,900 –> 00:39:53,740
این مقدار به عنوان پارامتری که ما هستیم
902
00:39:53,740 –> 00:39:56,170
طبق معمول ما این کار را انجام می دهیم
903
00:39:56,170 –> 00:39:57,760
نمونه ای از کلاس thread که از آن عبور می کنیم
904
00:39:57,760 –> 00:40:02,560
هدف ما عبور نام از
905
00:40:02,560 –> 00:40:04,570
موضوع را ببندید و ما مجموعه را پاس می کنیم
906
00:40:04,570 –> 00:40:07,480
آرگومان ها و در کلاس این آرگومان ها
907
00:40:07,480 –> 00:40:10,600
arc ها یک پارامتر کلاس جدید هستند
908
00:40:10,600 –> 00:40:12,670
gonna pass همه مقادیر هستند
909
00:40:12,670 –> 00:40:14,800
به عنوان آرگومان برای تابع در خدمت می کنند
910
00:40:14,800 –> 00:40:17,260
این مورد باید سرنگون شود و به عنوان
911
00:40:17,260 –> 00:40:19,540
ما فقط داریم فقط یکی را دریافت می کنیم
912
00:40:19,540 –> 00:40:22,090
پارامتر باید این کاما را درست بگذارم
913
00:40:22,090 –> 00:40:23,440
اینجاست تا نخواهم گیج شوی
914
00:40:23,440 –> 00:40:25,600
در مورد آن اما در اینجا اساسا یک لیست است
915
00:40:25,600 –> 00:40:27,520
از تمام پارامترهای مختلف شما
916
00:40:27,520 –> 00:40:29,440
می خواهم به تابع خود را در این
917
00:40:29,440 –> 00:40:31,660
در صورتی که من دوباره در حال اجرا هستم و شما می دانید
918
00:40:31,660 –> 00:40:34,930
در اینجا به عنوان مثال حباب در اینجا است
919
00:40:34,930 –> 00:40:38,170
لیز خوردن برای سه ثانیه در اینجا شکوفا می شود
920
00:40:38,170 –> 00:40:43,470
اینجا به مدت 1.5 ثانیه زندگی می کند
921
00:40:43,470 –> 00:40:46,390
راه های جایگزین متفاوت ایجاد
922
00:40:46,390 –> 00:40:49,180
و نمونه سازی یک موضوع و در حال اجرا
923
00:40:49,180 –> 00:40:52,240
در غیره با ارائه هدف نیست
924
00:40:52,240 –> 00:40:55,090
به خودی خود عمل می کند اما ایجاد یک
925
00:40:55,090 –> 00:40:58,390
زیرکلاس نخ زیر find the
926
00:40:58,390 –> 00:41:02,350
رفتار نخ در روش اجرا
927
00:41:02,350 –> 00:41:05,050
بنابراین این نیز بسیار رایج است و اگر شما
928
00:41:05,050 –> 00:41:07,390
معماری خوب داشتن طراحی خوب
929
00:41:07,390 –> 00:41:09,310
بر اساس برنامه نویسی شی گرا در
930
00:41:09,310 –> 00:41:12,480
کد شما این ممکن است به طور بالقوه
931
00:41:12,480 –> 00:41:15,040
کد خود را کمی بهتر سازماندهی کنید
932
00:41:15,040 –> 00:41:17,590
برای مثال اگر این پیشینه را دارید
933
00:41:17,590 –> 00:41:20,050
موضوعی که به جای آن در مورد آن صحبت می کنیم
934
00:41:20,050 –> 00:41:21,880
تعریف یک تابع به طور جداگانه در a
935
00:41:21,880 –> 00:41:24,310
ماژول های مختلف بر روی موضوع در a
936
00:41:24,310 –> 00:41:25,810
ماژول های مختلف شما فقط می توانید قرار دهید
937
00:41:25,810 –> 00:41:30,310
موضوع شما می توانید آن را بسیار واضح است
938
00:41:30,310 –> 00:41:32,440
هدف از تاپیک را نام ببرید
939
00:41:32,440 –> 00:41:37,110
و آن را بدون تعریف کردن اجرا کنید
940
00:41:37,110 –> 00:41:40,450
توابع خارجی معمولا توابع
941
00:41:40,450 –> 00:41:42,430
ما معمولا برای یک موضوع استفاده می کنیم
942
00:41:42,430 –> 00:41:44,680
می گویند 80 درصد از مواقع بسیار است
943
00:41:44,680 –> 00:41:46,660
تابع خاصی که استفاده نمی شود
944
00:41:46,660 –> 00:41:48,460
هر جای دیگری پس منطقی نیست
945
00:41:48,460 –> 00:41:50,070
برای تعریف تابعی که
946
00:41:50,070 –> 00:41:52,170
دامنه جهانی اگر قرار باشد فقط مورد استفاده قرار گیرد
947
00:41:52,170 –> 00:41:54,090
با تهدید به همین دلیل دوباره می توانید
948
00:41:54,090 –> 00:41:57,030
همان عملکرد را در داخل تعریف کنید
949
00:41:57,030 –> 00:42:00,000
روش اجرا که متد اجرا دریافت می کند
950
00:42:00,000 –> 00:42:03,420
هیچ چیز فقط خود تنها پارامتر ما
951
00:42:03,420 –> 00:42:05,820
معمولا تمام پارامترها را در
952
00:42:05,820 –> 00:42:10,020
سازنده کلاس نوشتن
953
00:42:10,020 –> 00:42:11,430
روش اولیه سازی کلاس
954
00:42:11,430 –> 00:42:14,370
و شما در اینجا باید مراقب باشید اگر
955
00:42:14,370 –> 00:42:16,320
از پارامترهای آن عبور نکنید
956
00:42:16,320 –> 00:42:18,870
نخ، بنابراین شما معمولا اگر شما می توانید
957
00:42:18,870 –> 00:42:21,360
گذراندن تعداد آرگومان هالتر
958
00:42:21,360 –> 00:42:24,540
چگونه به تصویب همه آن را در اینجا خوب است
959
00:42:24,540 –> 00:42:26,550
اخبار در مورد تعریف کلاس های خود را
960
00:42:26,550 –> 00:42:27,990
که تقریباً می توانید هر کاری را انجام دهید
961
00:42:27,990 –> 00:42:29,850
خواستن در روش نیاز و این یعنی
962
00:42:29,850 –> 00:42:32,280
هر نظر کوتاهی که با آن دارید
963
00:42:32,280 –> 00:42:35,550
اگر بخواهید می توان آرگومان های درست را برطرف کرد
964
00:42:35,550 –> 00:42:38,970
با یک کلاس سفارشی به خصوص I
965
00:42:38,970 –> 00:42:41,520
ترجیح می دهند زیر کلاس ها ایجاد کنند زیرا
966
00:42:41,520 –> 00:42:43,710
دوباره کد من را بهتر سازماندهی می کند
967
00:42:43,710 –> 00:42:45,840
ترجیح می دهند این را داشته باشند تا این را داشته باشند
968
00:42:45,840 –> 00:42:47,760
عملکرد خاص و همه چیز
969
00:42:47,760 –> 00:42:50,220
در روش اجرا در طول کپسوله می شود
970
00:42:50,220 –> 00:42:51,870
این آموزش و من باید باشم
971
00:42:51,870 –> 00:42:53,640
کاملا با شما صادق نیستم
972
00:42:53,640 –> 00:42:56,220
می خواهم زیر کلاس ها را انجام دهم اما استفاده خواهم کرد
973
00:42:56,220 –> 00:42:58,860
خیلی بیشتر هدف است زیرا این است
974
00:42:58,860 –> 00:43:00,360
دیدن تابع تعریف شده آسان تر است
975
00:43:00,360 –> 00:43:02,760
به طور جداگانه بنابراین فقط برای وضوح
976
00:43:02,760 –> 00:43:04,800
من از این آموزش استفاده نمی کنم
977
00:43:04,800 –> 00:43:06,960
اغلب اوقات زیر کلاس ها را می بینیم، اما بیایید ببینیم چگونه است
978
00:43:06,960 –> 00:43:09,410
کار می کند من فقط کلاس را شروع خواهم کرد
979
00:43:09,410 –> 00:43:12,180
وجود دارد که شما بروید T اکنون یک نمونه از من است
980
00:43:12,180 –> 00:43:14,820
موضوع و من فقط یک گذرانده دارم
981
00:43:14,820 –> 00:43:17,520
پارامتر عدد زمان به
982
00:43:17,520 –> 00:43:20,720
لغزش من تعریف می کنم یا آن را تنظیم می کنم
983
00:43:20,720 –> 00:43:25,920
پارامتر به عنوان یک ویژگی نمونه
984
00:43:25,920 –> 00:43:28,980
و اکنون در روش اجرا می توانم از آن استفاده کنم
985
00:43:28,980 –> 00:43:31,890
پارامتر درست در روش run بنابراین I
986
00:43:31,890 –> 00:43:35,010
dot dot start T dot start در حال اجرا است
987
00:43:35,010 –> 00:43:38,010
روش اجرا و در اینجا می توانم به همه دسترسی داشته باشم
988
00:43:38,010 –> 00:43:40,950
ویژگی هایی که به نام آنها نیاز دارم
989
00:43:40,950 –> 00:43:42,960
ویژگی برای مثال جالب است
990
00:43:42,960 –> 00:43:45,570
به یاد داشته باشید که ویژگی name تنظیم شده است
991
00:43:45,570 –> 00:43:47,880
حتی قبل از شروع تاپیک تا بتوانم
992
00:43:47,880 –> 00:43:50,400
فقط مستقیماً از آن استفاده کنید نه مانند
993
00:43:50,400 –> 00:43:54,510
با شناسه تاپیک
994
00:43:54,510 –> 00:43:59,060
که نیاز به مشورت در نوع الف
995
00:43:59,060 –> 00:44:01,550
زمان واقعی من نمی دانم در پایان در
996
00:44:01,550 –> 00:44:06,380
به شیوه ای پویا زندگی کنید، پس بیایید در مورد آن صحبت کنیم
997
00:44:06,380 –> 00:44:08,300
چیزی خیلی خیلی مهم
998
00:44:08,300 –> 00:44:10,970
از نظر مفهومی و این ویژگی ما است
999
00:44:10,970 –> 00:44:12,380
کمی در مورد آن بحث کرده اند
1000
00:44:12,380 –> 00:44:16,160
در حال حاضر در مورد تهدیدهای استفاده یا داشتن
1001
00:44:16,160 –> 00:44:20,150
دسترسی به داده های مشترک خوب است
1002
00:44:20,150 –> 00:44:24,800
بنابراین با استفاده از مفهوم قبلی ما
1003
00:44:24,800 –> 00:44:27,260
تصویر تجزیه و تحلیل فرآیندهای ما و
1004
00:44:27,260 –> 00:44:27,800
تهدیدها
1005
00:44:27,800 –> 00:44:30,410
ما گفتیم که این کل فرآیند ما است
1006
00:44:30,410 –> 00:44:33,800
جعبه زرد رنگ و دارای کد tauren و
1007
00:44:33,800 –> 00:44:36,500
دوباره چند متغیر محلی تعریف کرده است
1008
00:44:36,500 –> 00:44:38,060
این کل فرآیند است
1009
00:44:38,060 –> 00:44:41,480
سپس کل فرآیند نمونه سازی می شود
1010
00:44:41,480 –> 00:44:43,610
چند تهدید و آن تهدیدها خواهد بود
1011
00:44:43,610 –> 00:44:47,960
در آن لحظه تمام رشته ها را شروع کنید
1012
00:44:47,960 –> 00:44:51,190
در یک فرآیند به هر یک دسترسی داشته باشید
1013
00:44:51,190 –> 00:44:55,940
متغیرها را در آن فرآیند مشخص تعریف کنید
1014
00:44:55,940 –> 00:44:59,120
به خودی خود بنابراین در این مورد ما زمان داریم
1015
00:44:59,120 –> 00:45:01,520
به خواب در خارج از تعریف شده بود
1016
00:45:01,520 –> 00:45:04,130
تابع و البته آن را تعریف می کند
1017
00:45:04,130 –> 00:45:07,610
فرآیند اصلی زمانی که من رشته های خود را ایجاد می کنم
1018
00:45:07,610 –> 00:45:09,260
و من فقط اولی را شروع می کنم
1019
00:45:09,260 –> 00:45:11,090
یکی تا بتوانید بررسی کنید تا بتوانید آن را ببینید
1020
00:45:11,090 –> 00:45:14,990
میبینی که اینجا دو نفره میخوابه
1021
00:45:14,990 –> 00:45:17,270
چند ثانیه چون این چیزی است که ما داریم
1022
00:45:17,270 –> 00:45:17,780
تعریف شده است
1023
00:45:17,780 –> 00:45:20,540
پس بیایید دوباره آنها را راه اندازی کنیم و اجرا کنیم
1024
00:45:20,540 –> 00:45:22,670
همه دوباره و شما می بینید که همه آنها
1025
00:45:22,670 –> 00:45:24,470
همه تاپیک های ما دو تا اجرا می شوند
1026
00:45:24,470 –> 00:45:27,230
چند ثانیه بیایید این چیزی که هستم را تغییر دهیم
1027
00:45:27,230 –> 00:45:28,760
قرار دادن سه ثانیه یک امتیاز
1028
00:45:28,760 –> 00:45:31,310
پنج کوتاهتر و همه را تعریف کرده و شروع می کنیم
1029
00:45:31,310 –> 00:45:33,260
از آنها و می بینی که همه هستند
1030
00:45:33,260 –> 00:45:36,500
شروع با یک نقطه پنج ثانیه این
1031
00:45:36,500 –> 00:45:38,900
جالب است اما شما چون می توانید
1032
00:45:38,900 –> 00:45:44,440
رفتار رشته های خود را تغییر دهید
1033
00:45:44,440 –> 00:45:47,630
تغییر وضعیت یک متغیر جهانی
1034
00:45:47,630 –> 00:45:52,690
بنابراین فرض کنید یک خروجی داریم
1035
00:45:52,690 –> 00:45:57,140
زیرخط موضوعات برابر نادرست است
1036
00:45:57,140 –> 00:45:59,360
درست است بنابراین اینجا در داخل ما می توانیم انجام دهیم
1037
00:45:59,360 –> 00:46:02,540
چیزی شبیه به موضوعات while not exit
1038
00:46:02,540 –> 00:46:04,910
ما به انجام پسزمینه ادامه میدهیم
1039
00:46:04,910 –> 00:46:09,320
فرآیند درست زمانی اجرا شود که ما همه را بخواهیم
1040
00:46:09,320 –> 00:46:11,020
تهدیدات برای توقف
1041
00:46:11,020 –> 00:46:13,840
ما می توانیم با تغییر این سیگنال را نشان دهیم
1042
00:46:13,840 –> 00:46:16,780
شفاهی در فرآیند اصلی که شما گفتید
1043
00:46:16,780 –> 00:46:19,570
می گویند تهدید خروج برابر است و در حال حاضر
1044
00:46:19,570 –> 00:46:21,730
دفعه بعد این چیز اجرا می شود
1045
00:46:21,730 –> 00:46:24,520
آن متغیر را که می توانیم تغییر دهیم پیدا کنیم
1046
00:46:24,520 –> 00:46:29,110
حالت یا کار یک نخ توسط
1047
00:46:29,110 –> 00:46:31,840
تغییر این متغیرهای سراسری است
1048
00:46:31,840 –> 00:46:35,230
یک چیز مهم این در واقع خواهد شد
1049
00:46:35,230 –> 00:46:36,970
البته مشکل را معرفی کنید
1050
00:46:36,970 –> 00:46:38,680
شرایط حقوق و گام برداشتن
1051
00:46:38,680 –> 00:46:41,050
داده های مشترک ما در مورد من صحبت خواهیم کرد
1052
00:46:41,050 –> 00:46:44,590
در مورد آن در درس بعدی ما بنابراین
1053
00:46:44,590 –> 00:46:47,470
این یک مقدمه بسیار سریع بود
1054
00:46:47,470 –> 00:46:50,860
تهدیدهای پایتون چگونه کار می کنند من شما را نمی خواهم
1055
00:46:50,860 –> 00:46:53,320
برای حفظ کردن همه چیزهایی که قرار است باشیم
1056
00:46:53,320 –> 00:46:55,180
کارهای زیادی انجام می دهند، بنابراین اینطور خواهد شد
1057
00:46:55,180 –> 00:46:56,710
در پایان این بسیار آشنا
1058
00:46:56,710 –> 00:46:57,160
آموزش
1059
00:46:57,160 –> 00:47:00,130
چگونه نخ ها کار می کنند چگونه آنها را چگونه ایجاد کنیم
1060
00:47:00,130 –> 00:47:02,830
برای مثال نحوه ذخیره آنها و غیره
1061
00:47:02,830 –> 00:47:05,980
من می خواهم این قسمت را فقط ما به پایان برسانم
1062
00:47:05,980 –> 00:47:09,210
اولین رویکرد به تهدید با یک واقعی
1063
00:47:09,210 –> 00:47:12,670
نمونه ای از تهدیدهای ما و راه
1064
00:47:12,670 –> 00:47:15,070
اجرا و تمام این کارها را انجام می دهیم
1065
00:47:15,070 –> 00:47:19,450
از وب سروری که دارم استفاده می کنم
1066
00:47:19,450 –> 00:47:22,990
در این مخزن گنجانده شده است
1067
00:47:22,990 –> 00:47:26,650
اساسا به ما قیمت از
1068
00:47:26,650 –> 00:47:29,830
بیت کوین بنابراین من نمونه شوم
1069
00:47:29,830 –> 00:47:32,110
در اینجا من می خواهم اگر شما بررسی کنید
1070
00:47:32,110 –> 00:47:34,510
ساختار مخزن خود را خواهید دید
1071
00:47:34,510 –> 00:47:37,450
نمونه های رمزنگاری درست در اینجا و این یک است
1072
00:47:37,450 –> 00:47:39,760
نرم افزار فلاسک که می توانم به شما نشان دهم
1073
00:47:39,760 –> 00:47:43,420
به سرعت نمونه های مرموز آن است
1074
00:47:43,420 –> 00:47:46,510
فلت هوک این یکی همینجا و چی
1075
00:47:46,510 –> 00:47:48,720
این برنامه ها انجام می شود
1076
00:47:48,720 –> 00:47:52,120
بازگشت قیمت از متفاوت
1077
00:47:52,120 –> 00:47:54,730
ارزهای دیجیتال و صرافی ها و همه
1078
00:47:54,730 –> 00:47:58,930
که واقعیت این است که ما می توانستیم داشته باشیم
1079
00:47:58,930 –> 00:48:01,270
با انجام این کار با یک سرویس واقعی مشورت کرد
1080
00:48:01,270 –> 00:48:04,090
آموزش اما صادقانه بگویم نمی خواهم
1081
00:48:04,090 –> 00:48:06,400
برای ضربه زدن به یک سرویس خارجی با انجام ما
1082
00:48:06,400 –> 00:48:08,290
آموزش چون به طور بالقوه می توانید باشید
1083
00:48:08,290 –> 00:48:10,960
بارگذاری بیش از حد یک سرور فقط برای
1084
00:48:10,960 –> 00:48:12,670
به خاطر آبیاری، بنابراین من در زمان
1085
00:48:12,670 –> 00:48:15,820
زمان برای ایجاد مجدد برنامه برای
1086
00:48:15,820 –> 00:48:17,710
فقط برای این آموزش پس بیایید شروع کنیم
1087
00:48:17,710 –> 00:48:19,340
را
1088
00:48:19,340 –> 00:48:22,820
برنامه و ما قرار است قرار دهیم
1089
00:48:22,820 –> 00:48:26,150
قرار دادن لغزش نه خواب وجود دارد شما بروید و
1090
00:48:26,150 –> 00:48:29,570
در این URL در حال اجرا است
1091
00:48:29,570 –> 00:48:32,240
و این یک برنامه بسیار ساده و چه چیزی است
1092
00:48:32,240 –> 00:48:34,640
ما همه مبادلات را خواهیم داشت
1093
00:48:34,640 –> 00:48:36,950
بخشی از برنامه ما هستند، همه آنها اینجا هستند
1094
00:48:36,950 –> 00:48:39,110
نمادها یا همه ارزهای ما
1095
00:48:39,110 –> 00:48:41,630
پشتیبانی کنید و سپس می توانیم جوایز را دریافت کنیم
1096
00:48:41,630 –> 00:48:43,880
از تاریخ های داده شده، بیایید ببینیم آیا A وجود دارد یا خیر
1097
00:48:43,880 –> 00:48:46,580
قیمت در اینجا من نمی دانم قیمت وجود دارد
1098
00:48:46,580 –> 00:48:51,200
در اینجا برای عرض Enix BBC این است
1099
00:48:51,200 –> 00:48:57,380
قیمت آن تاریخ حتی راه من است
1100
00:48:57,380 –> 00:49:00,500
ایجاد این ساده به کنار
1101
00:49:00,500 –> 00:49:03,970
کد با گرفتن اطلاعات از
1102
00:49:03,970 –> 00:49:07,040
کجاست فکر می کنم درست اینجاست و هست
1103
00:49:07,040 –> 00:49:10,340
نوت بوک از crypto watch API شما می توانید
1104
00:49:10,340 –> 00:49:12,920
اگر می خواهید همه این نوت بوک ها را دنبال کنید
1105
00:49:12,920 –> 00:49:15,140
برای دیدن روندی که دنبال می کنم
1106
00:49:15,140 –> 00:49:18,380
ایجاد کنید اما اساسا من آن را دانلود کردم
1107
00:49:18,380 –> 00:49:21,140
اطلاعات از این API عمومی و I
1108
00:49:21,140 –> 00:49:23,810
همه آنها را در فایل های CSV دانلود کنید و سپس
1109
00:49:23,810 –> 00:49:26,900
من آن را دنباله Lite data P
1110
00:49:26,900 –> 00:49:30,140
پایگاه داده بنابراین برنامه flask در حال خواندن است
1111
00:49:30,140 –> 00:49:32,780
قیمت از پایگاه داده به طوری که روش
1112
00:49:32,780 –> 00:49:36,320
قیمت در واقع این پرس و جو را انجام می دهد
1113
00:49:36,320 –> 00:49:38,240
شما می خواهید قیمت برای یک معین دریافت کنید
1114
00:49:38,240 –> 00:49:41,090
مبادله حتی نماد و تاریخ معین ما
1115
00:49:41,090 –> 00:49:44,120
آن پرس و جو را انجام دهید و ما آن را برمی گردانیم
1116
00:49:44,120 –> 00:49:47,060
اگر هیچ نتیجه ای نداشته باشیم نتیجه می دهیم
1117
00:49:47,060 –> 00:49:52,370
انتخاب خواهد کرد که نه را برگرداند تا دوباره این کار انجام شود
1118
00:49:52,370 –> 00:49:54,080
یک معرفی سریع از نحوه برنامه ما
1119
00:49:54,080 –> 00:49:56,600
کار می کند بنابراین در حال اجرا است ما می توانیم آن را ببینیم
1120
00:49:56,600 –> 00:49:57,860
می توانید آن را در اینجا ببینید
1121
00:49:57,860 –> 00:50:00,220
و کاری که ما میخواهیم انجام دهیم این است که من انجام خواهم داد
1122
00:50:00,220 –> 00:50:03,590
نشانی وب پایه PI را که از آن استفاده خواهیم کرد، نمونه برداری کنید
1123
00:50:03,590 –> 00:50:06,890
ماژول ریاضی درخواست هایی که از آن استفاده می شود
1124
00:50:06,890 –> 00:50:09,290
برای انجام درخواست های HTTP مطمئن هستم که شما هستید
1125
00:50:09,290 –> 00:50:11,270
همه با آن آشنا هستند و ما می خواهیم
1126
00:50:11,270 –> 00:50:13,280
یک پرس و جو ساده را در اینجا انجام دهید ببینید چیست
1127
00:50:13,280 –> 00:50:14,810
قیمت در واقع اجازه دهید به دنبال
1128
00:50:14,810 –> 00:50:16,930
همین قیمت اینجاست، بنابراین ما خواهیم دید
1129
00:50:16,930 –> 00:50:20,960
BitFenix BBC اما ما آن را تغییر می دهیم
1130
00:50:20,960 –> 00:50:24,830
تاریخ و ما همان قیمت را خواهیم داشت
1131
00:50:24,830 –> 00:50:29,610
به طور بالقوه باز است، بگذارید 7 – 47 را ببینیم
1132
00:50:29,610 –> 00:50:31,950
بسته هفت به چهار تا هفت نقطه پنج
1133
00:50:31,950 –> 00:50:34,170
پس بازم همون قیمته
1134
00:50:34,170 –> 00:50:37,170
برای هر دوی آنها، پس در حال حاضر چرا ما استفاده می کنیم
1135
00:50:37,170 –> 00:50:39,270
این بالا ما از آن استفاده خواهیم کرد
1136
00:50:39,270 –> 00:50:41,640
از کل آموزش چه من چه ما
1137
00:50:41,640 –> 00:50:44,990
می خواهیم در اینجا انجام دهیم، ما می خواهیم بررسی کنیم
1138
00:50:44,990 –> 00:50:49,170
قیمت چند متفاوت
1139
00:50:49,170 –> 00:50:50,880
ارزهای دیجیتال در چند مورد مختلف
1140
00:50:50,880 –> 00:50:52,740
تغییرات اما برای بیشتر کردن چیزها
1141
00:50:52,740 –> 00:50:55,380
جالب است کاری که من می خواهم انجام دهم این است که انجام دهم
1142
00:50:55,380 –> 00:50:59,610
با ارائه خواب سرور را راه اندازی مجدد کنید
1143
00:50:59,610 –> 00:51:02,130
پارامتر و این یک زمان مصنوعی است
1144
00:51:02,130 –> 00:51:05,460
برای اینکه سرور بخوابد بنابراین بررسی می کنیم
1145
00:51:05,460 –> 00:51:08,550
درست در اینجا اگر لغزش، ما میخواهیم لغزش هر کدام
1146
00:51:08,550 –> 00:51:11,700
بعد از هر درخواست به تعویق می افتد
1147
00:51:11,700 –> 00:51:14,460
برای این تعداد ثانیه داده شده و
1148
00:51:14,460 –> 00:51:18,000
این که در اینجا غیر رسمی است به ما کمک خواهد کرد
1149
00:51:18,000 –> 00:51:22,500
فرآیند یک سرور کند را شبیه سازی کنید
1150
00:51:22,500 –> 00:51:27,240
و به همین دلیل است که در صورت شما به تهدید نیاز داریم
1151
00:51:27,240 –> 00:51:29,070
از توضیح مفهومی ما به یاد داشته باشید
1152
00:51:29,070 –> 00:51:30,480
گفتیم فرض کنیم می خواهیم مشورت کنیم
1153
00:51:30,480 –> 00:51:32,790
سه قیمت داریم چه من مشورت چه
1154
00:51:32,790 –> 00:51:34,260
آیا ما اینجا داریم همیشه بررسی می کنیم
1155
00:51:34,260 –> 00:51:38,670
برای BTC و ما BitFenix BF داریم
1156
00:51:38,670 –> 00:51:44,820
بیت تمبر و ما اینها را کراکن کرده ایم
1157
00:51:44,820 –> 00:51:49,380
سه تبادل اگر هر درخواست باشد
1158
00:51:49,380 –> 00:51:53,070
با تاخیر دو ثانیه راست دو ثانیه
1159
00:51:53,070 –> 00:51:55,650
زیرا ما به طور مصنوعی سرعت خود را کاهش داده ایم
1160
00:51:55,650 –> 00:51:58,020
سرور اگر این را به ترتیب انجام دهیم
1161
00:51:58,020 –> 00:52:01,080
به این معنی که هیچ تهدیدی وجود ندارد
1162
00:52:01,080 –> 00:52:02,910
شما می دانید که می توانید یک کار را انجام دهید
1163
00:52:02,910 –> 00:52:04,020
برای حلقه شما می توانید انجام دهید یا کمتر
1164
00:52:04,020 –> 00:52:06,210
درک، صرف نظر از کل زمان
1165
00:52:06,210 –> 00:52:08,040
که شما را مجبور می کند همه را اجرا کنید
1166
00:52:08,040 –> 00:52:10,950
این چیزها شش ثانیه خواهد بود
1167
00:52:10,950 –> 00:52:13,080
یا حداقل شش ثانیه حدود شش
1168
00:52:13,080 –> 00:52:14,670
چند ثانیه درست است زیرا می خواهید بسازید
1169
00:52:14,670 –> 00:52:16,800
این درخواست بنده برای دو ثانیه اجازه دهید
1170
00:52:16,800 –> 00:52:18,600
اجازه دهید این درخواست دو ثانیه باقی بماند
1171
00:52:18,600 –> 00:52:20,640
این درخواست را برای دو ثانیه انجام دهید
1172
00:52:20,640 –> 00:52:26,180
و در نهایت فرآیند انجام خواهد شد اگر
1173
00:52:26,180 –> 00:52:31,800
ما تمام این وظایف را انجام می دهیم
1174
00:52:31,800 –> 00:52:37,950
قیمت به طور همزمان که معنی و نوع
1175
00:52:37,950 –> 00:52:40,859
به صورت موازی من از این دو استفاده می کنم
1176
00:52:40,859 –> 00:52:42,349
هیجان انگیز در
1177
00:52:42,349 –> 00:52:45,030
به جای هم تا زمانی که مفهوم را ببینیم
1178
00:52:45,030 –> 00:52:47,220
از گیل و همه اینها اما اگر فرار کنیم
1179
00:52:47,220 –> 00:52:49,859
همه اینها همزمان و ما اینها را می گوییم
1180
00:52:49,859 –> 00:52:51,960
همه در حال اجرا هستند امیدوارم بگوییم
1181
00:52:51,960 –> 00:52:53,910
همه آنها به موازات آن در حال اجرا هستند
1182
00:52:53,910 –> 00:52:55,740
به این معنی است که کل فرآیند در حال انجام است
1183
00:52:55,740 –> 00:52:57,869
در حدود دو ثانیه تمام شود
1184
00:52:57,869 –> 00:53:01,800
و این حوزه استفاده از موضوعات است
1185
00:53:01,800 –> 00:53:06,230
بیایید آن را امتحان کنیم اکنون من می خواهم
1186
00:53:06,230 –> 00:53:08,190
تهدیدها را با
1187
00:53:08,190 –> 00:53:10,170
قاشق تعویض من استفاده می کنم ما استفاده می کنیم
1188
00:53:10,170 –> 00:53:12,510
این سه تبادل و ما می خواهیم
1189
00:53:12,510 –> 00:53:15,540
اندازه گیری کنیم که چقدر زمان برای انجام آن نیاز داریم
1190
00:53:15,540 –> 00:53:17,849
کل درخواست بنابراین برای هر یک از
1191
00:53:17,849 –> 00:53:20,910
مبادلات ما این است
1192
00:53:20,910 –> 00:53:23,579
متوالی روند متوالی توسط
1193
00:53:23,579 –> 00:53:25,980
ابتدا عرض و X را خواستیم
1194
00:53:25,980 –> 00:53:28,109
چهار بیت آنها را و سپس برای کرک کردن
1195
00:53:28,109 –> 00:53:33,390
این برای ما 6.84 ثانیه تمام می شود
1196
00:53:33,390 –> 00:53:35,040
درست است که این ترتیب است ما بررسی می کنیم
1197
00:53:35,040 –> 00:53:37,740
قیمت اول ما می خوابیم فقط شما می دانید
1198
00:53:37,740 –> 00:53:40,530
بلوک می کند و سپس دیگری را بررسی می کنیم
1199
00:53:40,530 –> 00:53:41,970
یکی دیگر را بررسی کنید این یک ترتیب است
1200
00:53:41,970 –> 00:53:45,750
یکی که شش ثانیه طول می کشد اما حالا بیایید
1201
00:53:45,750 –> 00:53:48,359
این کار را همزمان انجام دهید ما یک را تعریف می کنیم
1202
00:53:48,359 –> 00:53:49,950
تابعی است که قیمت را بررسی کنید
1203
00:53:49,950 –> 00:53:53,160
تاریخ نماد مبادله و پایه را دریافت می کند
1204
00:53:53,160 –> 00:53:56,190
URL که از آدرس پیش فرض استفاده می کنیم
1205
00:53:56,190 –> 00:53:58,800
فقط قیمت را بررسی می کنم، بنابراین اکنون من
1206
00:53:58,800 –> 00:54:02,940
می تواند برای هر تبادل یک موضوع شروع کند
1207
00:54:02,940 –> 00:54:06,869
که من تنظیم کردم تا شما سه تا داشته باشید
1208
00:54:06,869 –> 00:54:08,400
مبادلات سه مورد ایجاد خواهند کرد
1209
00:54:08,400 –> 00:54:11,730
موضوعات و کاری که من می خواهم انجام دهم این است که هستم
1210
00:54:11,730 –> 00:54:15,060
زمان شروع تاپیک ها شروع می شود
1211
00:54:15,060 –> 00:54:18,000
شروع به شمارش کنید و اکنون همه اینها را می بینیم
1212
00:54:18,000 –> 00:54:22,140
قیمت BitFenix Kraken و بیت روگرفت
1213
00:54:22,140 –> 00:54:25,380
همه آنها در حدود 2.30 5 تمام شده اند
1214
00:54:25,380 –> 00:54:27,690
ثانیه ها و این چیزی است که ما هستیم
1215
00:54:27,690 –> 00:54:29,880
انتظار از تهدید
1216
00:54:29,880 –> 00:54:33,060
ما منتظر متاسفم متوالی هستیم
1217
00:54:33,060 –> 00:54:35,640
همزمان نزدیک به اجرای موازی
1218
00:54:35,640 –> 00:54:40,470
برای سرعت بخشیدن به همه چیز در حال حاضر چند چیز در اینجا
1219
00:54:40,470 –> 00:54:43,470
نمی توانیم مطمئن باشیم که کدام است
1220
00:54:43,470 –> 00:54:45,690
برای اینکه در این مورد صادق باشیم، اول تمام کردن
1221
00:54:45,690 –> 00:54:47,970
مورد kraken اگر اجرا کنیم اول تمام شد
1222
00:54:47,970 –> 00:54:50,400
شاید یکی دیگر بتواند این کار را تمام کند
1223
00:54:50,400 –> 00:54:54,270
اول اینکه همه چیز خیلی خطی نیست
1224
00:54:54,270 –> 00:54:55,890
در کارهایی که باید در زندگی واقعی انجام دهید
1225
00:54:55,890 –> 00:54:58,020
در این مورد که مصنوعی زندگی می کند
1226
00:54:58,020 –> 00:55:00,540
برای دو ثانیه در زندگی واقعی اینها
1227
00:55:00,540 –> 00:55:03,390
ممکن است درخواست ها کندتر از اینها باشد
1228
00:55:03,390 –> 00:55:05,280
درخواست می کند، بنابراین شما نمی دانید چگونه است
1229
00:55:05,280 –> 00:55:08,730
به پایان می رسد و شما نیز آن را در
1230
00:55:08,730 –> 00:55:10,260
در این مورد این دو مورد نوشته شده است
1231
00:55:10,260 –> 00:55:12,630
در همان خط که به دلیل وجود دارد
1232
00:55:12,630 –> 00:55:15,330
برخی مسائل وجود دارد درست برخی
1233
00:55:15,330 –> 00:55:18,600
حالت مشترک یا عوارض جانبی که هستند
1234
00:55:18,600 –> 00:55:20,100
تاثیر می گذارد که ما بیشتر خواهیم دید
1235
00:55:20,100 –> 00:55:23,070
در مورد آن در درس بعدی ما Bregan the
1236
00:55:23,070 –> 00:55:26,310
ایده اینجا این است که همه چیز را تف می کند
1237
00:55:26,310 –> 00:55:29,280
با اجرای همزمان این سه
1238
00:55:29,280 –> 00:55:31,200
موضوعات برای مشاوره قیمت آن
1239
00:55:31,200 –> 00:55:33,930
سه مبادله بنابراین این فوق العاده است
1240
00:55:33,930 –> 00:55:36,240
درست است بگوییم داریم، بگوییم اگر
1241
00:55:36,240 –> 00:55:39,810
بیایید این مثال را دنبال کنیم و بگوییم ما
1242
00:55:39,810 –> 00:55:42,930
میخواهیم بگیریم میخواهیم برایش جایزه بگیریم
1243
00:55:42,930 –> 00:55:45,000
تمام صرافی های 10 برابری که در خود داریم
1244
00:55:45,000 –> 00:55:47,760
سیستم سه نماد بتا C LTC اتر
1245
00:55:47,760 –> 00:55:52,230
اتر و ما می خواهیم تمام 30 گذشته را بدست آوریم
1246
00:55:52,230 –> 00:55:55,860
در کل ما 900 روز خواهیم داشت
1247
00:55:55,860 –> 00:56:00,410
درخواست ها می توانیم 900 تهدید را شروع کنیم
1248
00:56:00,410 –> 00:56:03,030
پیروی از این الگو، ایجاد یک
1249
00:56:03,030 –> 00:56:06,030
نخ در هر کار می توانیم همه آن ها را ایجاد کنیم
1250
00:56:06,030 –> 00:56:09,810
900 موضوع معمولا جواب منفی است ما
1251
00:56:09,810 –> 00:56:13,320
نمی توان زیرا اگر ما برویم نخ ها این کار را انجام خواهند داد
1252
00:56:13,320 –> 00:56:15,540
آنها دوباره به این تصویر برمی گردند
1253
00:56:15,540 –> 00:56:18,480
مصرف منابع در این فرآیند بنابراین ما
1254
00:56:18,480 –> 00:56:20,490
نمی خواهم کل فرآیند را مسدود کند
1255
00:56:20,490 –> 00:56:22,560
با تعداد زیادی نخ کار می کند
1256
00:56:22,560 –> 00:56:25,050
به طور همزمان، بنابراین ما می خواهیم ببینیم چگونه هستیم
1257
00:56:25,050 –> 00:56:28,050
می تواند این مشکل را با چندین راه حل کند
1258
00:56:28,050 –> 00:56:30,030
ما از تولید کننده-مصرف کننده استفاده خواهیم کرد
1259
00:56:30,030 –> 00:56:31,680
مدلی که ما این مثال را دنبال می کنیم
1260
00:56:31,680 –> 00:56:36,359
مثال دقیقی که در آن a ایجاد خواهیم کرد
1261
00:56:36,359 –> 00:56:39,510
مخزن تهدید فرض کنید 10 و آنها هستند
1262
00:56:39,510 –> 00:56:41,369
از دویدن همه مراقبت خواهم کرد
1263
00:56:41,369 –> 00:56:44,070
درخواست ها اما باز هم چیزی که من اینجا می گویم
1264
00:56:44,070 –> 00:56:46,950
دقت کنید خلاصه بنویسید
1265
00:56:46,950 –> 00:56:49,140
پایان نامه مراقب باشید که چند موضوع
1266
00:56:49,140 –> 00:56:50,970
شما می خواهید آن را ایجاد کنید بستگی زیادی دارد
1267
00:56:50,970 –> 00:56:53,520
سیستمی که شما از آن استفاده می کنید و ما می خواهیم
1268
00:56:53,520 –> 00:56:55,619
بیشتر در مورد اینکه یک فرمول وجود دارد صحبت کنید
1269
00:56:55,619 –> 00:56:59,040
ماژول پایتون برای محاسبه چگونگی استفاده می کند
1270
00:56:59,040 –> 00:57:01,280
بسیاری از تهدیدات بهینه است
1271
00:57:01,280 –> 00:57:03,620
اما این در نهایت به عنوان یک خلاصه است
1272
00:57:03,620 –> 00:57:05,990
به یاد داشته باشید threading ماژول بود
1273
00:57:05,990 –> 00:57:08,570
با استفاده از زیرخط استفاده نکنید
1274
00:57:08,570 –> 00:57:10,910
تاپیک متاسفم چون خیلی هست
1275
00:57:10,910 –> 00:57:12,500
ماژول سطح پایینی که نمی خواهید دریافت کنید
1276
00:57:12,500 –> 00:57:14,660
به هم ریخته است، پس بیایید جلو برویم
1277
00:57:14,660 –> 00:57:18,080
با داده های رشته و خواندن یا در آغوش گرفتن
1278
00:57:18,080 –> 00:57:21,530
شرایط بیایید اکنون در مورد آنچه هستند صحبت کنیم
1279
00:57:21,530 –> 00:57:23,690
پیامدهای داشتن داده های مشترک
1280
00:57:23,690 –> 00:57:26,240
در تهدیدهای قبلی ما در الف
1281
00:57:26,240 –> 00:57:27,050
نوت بوک قبلی
1282
00:57:27,050 –> 00:57:29,810
ما دیدیم که چگونه چندین رشته می توانند دسترسی داشته باشند
1283
00:57:29,810 –> 00:57:32,570
با توجه به متغیرهای محلی یا در واقع جهانی
1284
00:57:32,570 –> 00:57:34,070
متغیرها در یک فرآیند درست هستند
1285
00:57:34,070 –> 00:57:35,660
در واقع محلی به موضوع اصلی آن است
1286
00:57:35,660 –> 00:57:38,870
نماد اساسا گیج کننده است
1287
00:57:38,870 –> 00:57:42,950
تهدیدها می توانند به داده های اشتراک دسترسی داشته باشند
1288
00:57:42,950 –> 00:57:44,720
جالب است زیرا دیدیم که می توانیم
1289
00:57:44,720 –> 00:57:47,990
رفتار نخ ها را با فقط کنترل کنید
1290
00:57:47,990 –> 00:57:51,380
همه با جهش متغیرهای مختلف که
1291
00:57:51,380 –> 00:57:54,050
در محدوده جهانی تنظیم شده اند
1292
00:57:54,050 –> 00:57:56,810
فرآیندی که می تواند راحت باشد اما
1293
00:57:56,810 –> 00:57:59,930
همچنین چند مشکل و
1294
00:57:59,930 –> 00:58:01,240
این چیزی است که ما در مورد آن صحبت خواهیم کرد
1295
00:58:01,240 –> 00:58:03,320
در حال حاضر اولین مشکل ما می خواهیم
1296
00:58:03,320 –> 00:58:06,980
ببینید مشکل با شرایط افزایش است
1297
00:58:06,980 –> 00:58:09,530
که در آن از نظر مفهومی و این
1298
00:58:09,530 –> 00:58:12,020
شرایط مسابقه بسیار مفهومی است
1299
00:58:12,020 –> 00:58:15,010
می شود و من در اینجا پیوندهایی به آن دارم
1300
00:58:15,010 –> 00:58:17,450
مقاله ویکی پدیا اما اساساً یک مسابقه است
1301
00:58:17,450 –> 00:58:20,450
شرایط یک وضعیت مشکل ساز است
1302
00:58:20,450 –> 00:58:22,340
چیزی که ما نمی خواهیم در الف داشته باشیم
1303
00:58:22,340 –> 00:58:25,190
برنامه ای که در آن نتیجه
1304
00:58:25,190 –> 00:58:29,270
برنامه به روشی که یا بستگی دارد
1305
00:58:29,270 –> 00:58:31,220
ترتیبی که برخی دستورالعمل ها هستند
1306
00:58:31,220 –> 00:58:33,500
اجرا شد این چیزی است که ما نمی خواهیم
1307
00:58:33,500 –> 00:58:37,220
فرض کنید امروز برنامه ما پنج خروجی دارد
1308
00:58:37,220 –> 00:58:40,180
چون من نمیدانم موضوع 1 اجرا میشود
1309
00:58:40,180 –> 00:58:43,430
قبل از اجرای موضوع 2 و فردا آن
1310
00:58:43,430 –> 00:58:45,560
خروجی هفت به دلیل موضوع برای اجرا
1311
00:58:45,560 –> 00:58:49,430
اول و اجرا موضوع 1 اجرا بعد تا ما
1312
00:58:49,430 –> 00:58:52,850
نمی خواهم یک نوع تصادفی داشته باشم
1313
00:58:52,850 –> 00:58:55,280
رفتار در برنامه های ما به دلیل یکی
1314
00:58:55,280 –> 00:58:58,250
thread but the other و اول اجرا کنید
1315
00:58:58,250 –> 00:59:00,980
درست است که ما رویکرد سوم انسان گرایانه را می خواهیم
1316
00:59:00,980 –> 00:59:03,680
ما چیزهایی می خواهیم که ما او هستیم
1317
00:59:03,680 –> 00:59:05,600
نمی خواهیم برنامه ما اجرا شود
1318
00:59:05,600 –> 00:59:08,330
امروز با موفقیت به دلیل موضوع یک
1319
00:59:08,330 –> 00:59:11,840
یکی در مسابقه مسابقه و فردا
1320
00:59:11,840 –> 00:59:14,099
در انتقال پول با شکست مواجه می شود
1321
00:59:14,099 –> 00:59:17,099
نادرست یا من نمی دانم غرغر کردن
1322
00:59:17,099 –> 00:59:19,499
دسترسی به کاربری که پرداخت نکرده است زیرا
1323
00:59:19,499 –> 00:59:22,200
یک تهدید دیگر در ابتدا به درستی که ما می خواهیم اجرا شود
1324
00:59:22,200 –> 00:59:26,279
برنامه های ما قاطعانه باشد بنابراین من هستم
1325
00:59:26,279 –> 00:59:28,739
مشکل نژاد را به شما نشان خواهم داد
1326
00:59:28,739 –> 00:59:30,720
شرایط با این مثال داریم a
1327
00:59:30,720 –> 00:59:34,200
شمارنده جهانی varville که تنظیم می کند
1328
00:59:34,200 –> 00:59:36,539
صفر و ما این را تعریف می کنیم
1329
00:59:36,539 –> 00:59:38,489
افزایش تابعی که در آن می خواهیم
1330
00:59:38,489 –> 00:59:40,589
در معرض تهدید قرار بگیریم، ده تا ایجاد خواهیم کرد
1331
00:59:40,589 –> 00:59:43,650
تهدیدهای مختلف و ما انجام خواهیم داد
1332
00:59:43,650 –> 00:59:47,130
آنها تعداد معینی تکرار را اجرا می کنند
1333
00:59:47,130 –> 00:59:48,749
ما انتخاب می کنیم هر کدام را می گوییم
1334
00:59:48,749 –> 00:59:52,259
تاپیک هزار بار اجرا بشه خیلی درسته
1335
00:59:52,259 –> 00:59:54,210
ما فقط برای دنبال کردن ما ایجاد می کنیم
1336
00:59:54,210 –> 00:59:56,819
آیا ما می خواهیم ایجاد کنیم، جهانی داریم
1337
00:59:56,819 –> 00:59:59,220
متغیر شمارنده با شروع صفر و
1338
00:59:59,220 –> 01:00:02,369
ما میخواهیم ده مختلف را نمونه برداری کنیم
1339
01:00:02,369 –> 01:00:05,489
موضوع ده در اینجا ما ده را انجام می دهیم
1340
01:00:05,489 –> 01:00:09,509
تاپیک های مختلف همین جا هستند
1341
01:00:09,509 –> 01:00:13,910
ده رشته و هر نخ اجرا می شود
1342
01:00:13,910 –> 01:00:19,890
1000 تکرار در اینجا از این کد 1000
1343
01:00:19,890 –> 01:00:21,690
روی آن به عنوان یک پارامتر کار کنید اما در این
1344
01:00:21,690 –> 01:00:24,269
در صورتی که باید 1000 1000 پیدا کنیم
1345
01:00:24,269 –> 01:00:26,630
تکرار آن تکرار داده شده
1346
01:00:26,630 –> 01:00:30,690
افزایش شمارنده یک سمت راست بنابراین
1347
01:00:30,690 –> 01:00:33,059
همه آنها در حال افزایش سهم هستند
1348
01:00:33,059 –> 01:00:36,299
مقابله با یک راست این چیزی است که آنها
1349
01:00:36,299 –> 01:00:39,319
همه دارند انجام می دهند
1350
01:00:39,319 –> 01:00:45,239
خروجی مورد انتظار چه چیزی می تواند باشد
1351
01:00:45,239 –> 01:00:47,489
این بیایید بگوییم که موضوعات را فراموش کنید
1352
01:00:47,489 –> 01:00:49,619
یک ثانیه فرض کنید شما این چیز را اجرا می کنید
1353
01:00:49,619 –> 01:00:52,140
به طور متوالی اول اول را اجرا می کنید
1354
01:00:52,140 –> 01:00:54,900
تاپیک در اینجا شما اجرا می کنید هزار a
1355
01:00:54,900 –> 01:00:57,509
هزار تکرار بنابراین خروجی است
1356
01:00:57,509 –> 01:00:59,849
می شود 1000 یا متاسفم خروجی ندارد
1357
01:00:59,849 –> 01:01:02,249
مقدار شمارنده بعد از این اول
1358
01:01:02,249 –> 01:01:05,519
Thread runs 1000 است سپس شما آن را اجرا کنید
1359
01:01:05,519 –> 01:01:07,979
نخ دوم و این یکی افزایش می یابد
1360
01:01:07,979 –> 01:01:11,069
تمام شمارنده ده در 1000 دوباره
1361
01:01:11,069 –> 01:01:11,519
متاسف
1362
01:01:11,519 –> 01:01:13,440
پس این چون شما دو هزار دارید
1363
01:01:13,440 –> 01:01:16,019
اینجا و بعد این به پایان می رسد و ما داریم
1364
01:01:16,019 –> 01:01:18,719
یک تاپیک دیگر هزار تکرار در حال حاضر
1365
01:01:18,719 –> 01:01:21,839
در سه هزار سمت راست بنابراین خروجی در
1366
01:01:21,839 –> 01:01:22,309
را
1367
01:01:22,309 –> 01:01:25,329
پایان این چیز برابر است با
1368
01:01:25,329 –> 01:01:28,759
تعداد تهدیدهایی که ما داریم
1369
01:01:28,759 –> 01:01:31,910
می خواهم بگویم که تعداد تهدیدها چندین برابر است
1370
01:01:31,910 –> 01:01:36,170
تعداد تکرارها در مثال ما
1371
01:01:36,170 –> 01:01:41,630
ده تهدید ده بار هزار
1372
01:01:41,630 –> 01:01:45,499
تکرارها بنابراین نتیجه ما ده خواهد شد
1373
01:01:45,499 –> 01:01:48,859
هزار که نتیجه آن خواهد بود
1374
01:01:48,859 –> 01:01:51,109
نتیجه نهایی که انتظارش را داریم
1375
01:01:51,109 –> 01:01:54,199
ما به درستی اجرا می کنیم اما آن را کند می کنیم
1376
01:01:54,199 –> 01:01:56,180
مهم نیست اما به درستی اجرا شده است
1377
01:01:56,180 –> 01:01:58,609
ما ده هزار برنامه خواهیم داشت
1378
01:01:58,609 –> 01:02:01,609
خروجی خوبی خواهد بود که خواهیم دید
1379
01:02:01,609 –> 01:02:03,949
در رفتار نادرست در مشکل
1380
01:02:03,949 –> 01:02:06,229
رفتار مشروط برنج این است که اینها
1381
01:02:06,229 –> 01:02:08,900
موضوعات به هر کدام وارد خواهند شد
1382
01:02:08,900 –> 01:02:11,329
دیگر و آنها داده های جهش می یابند
1383
01:02:11,329 –> 01:02:13,900
اینجا و آنجا و خروجی خواهد بود
1384
01:02:13,900 –> 01:02:16,999
متفاوت از ده هزار که از
1385
01:02:16,999 –> 01:02:19,069
البته مشکل ساز است که ما آن را نمی خواهیم
1386
01:02:19,069 –> 01:02:22,430
اتفاق بیفتد پس اجازه دهید همه این موارد را روشن کنم
1387
01:02:22,430 –> 01:02:24,229
و ما نمونه ای را که می توانیم اجرا می کنیم
1388
01:02:24,229 –> 01:02:25,910
تابع افزایش را تعریف کنید
1389
01:02:25,910 –> 01:02:28,959
متغیر تکراری که ما می خواهیم
1390
01:02:28,959 –> 01:02:31,039
موضوعات را نمونه برداری کنید و ما می خواهیم
1391
01:02:31,039 –> 01:02:34,009
همه آنها را شروع کنید تا کل همه را اجرا کنید
1392
01:02:34,009 –> 01:02:36,049
تمام شد این خیلی سریع بود ما
1393
01:02:36,049 –> 01:02:38,439
لغزش آنها فقط برای چند
1394
01:02:38,439 –> 01:02:46,119
میلی ثانیه و در حال حاضر همه چیز خوب کار کرد
1395
01:02:46,740 –> 01:02:52,060
اکنون متاسفم که تاپیک ها شکست می خورند پس این است
1396
01:02:52,060 –> 01:02:54,220
جالب در مثال اول نه
1397
01:02:54,220 –> 01:02:55,570
چیزی که معمولا اتفاق نمی افتد
1398
01:02:55,570 –> 01:02:58,180
و من در واقع به تلاش فکر می کردم
1399
01:02:58,180 –> 01:03:00,400
آن را در مثال اول تکرار کنید
1400
01:03:00,400 –> 01:03:02,200
کار کرد می دانید و مشکل همین است
1401
01:03:02,200 –> 01:03:04,390
با شرایط برنج و این عالی است
1402
01:03:04,390 –> 01:03:07,930
اتفاقی که افتاد ممکن است خود را اجرا کنید
1403
01:03:07,930 –> 01:03:11,500
کد و ممکن است مانند آن به درستی اجرا شود
1404
01:03:11,500 –> 01:03:14,440
مثال اول کار کرد اما بعد شما
1405
01:03:14,440 –> 01:03:17,349
در تولید امتحان شد و آن را می شکند
1406
01:03:17,349 –> 01:03:19,570
بدترین چیز این است که نفوذ نمی کند
1407
01:03:19,570 –> 01:03:21,580
این مورد من باعث شکستن آن هستم
1408
01:03:21,580 –> 01:03:22,210
هدف
1409
01:03:22,210 –> 01:03:24,010
مشکل این است که شما یک an
1410
01:03:24,010 –> 01:03:26,200
نتیجه نادرست که اگر شما هستید
1411
01:03:26,200 –> 01:03:28,690
در مورد کد مطمئن هستید زیرا اجرا می کنید
1412
01:03:28,690 –> 01:03:31,839
آن را به صورت محلی و آن را کار کرده و یا تست
1413
01:03:31,839 –> 01:03:35,140
در حال گذراندن در تولید شما به شما خواهد شد
1414
01:03:35,140 –> 01:03:38,109
به این حجم از شمارنده اعتماد خواهد کرد
1415
01:03:38,109 –> 01:03:40,599
اگر چه دوباره آن یک معیوب است
1416
01:03:40,599 –> 01:03:42,640
بیایید دوباره آن را انجام دهیم، بیایید سعی کنیم جدید ایجاد کنیم
1417
01:03:42,640 –> 01:03:45,010
موضوعات و ببینید که چگونه آنها به خوبی کار می کنند
1418
01:03:45,010 –> 01:03:47,740
به نظر می رسد در حال حاضر به شکست ادامه می دهد و بررسی کنید
1419
01:03:47,740 –> 01:03:49,630
نتایجی که با متغیر آن مقابله می کند
1420
01:03:49,630 –> 01:03:51,849
همیشه متفاوت است مثل اینکه کاملا
1421
01:03:51,849 –> 01:03:56,380
تصادفی فقط هر 32000 در این مورد
1422
01:03:56,380 –> 01:04:00,160
این 47000 است فقط اوه من نیستم
1423
01:04:00,160 –> 01:04:03,359
پیشخوان را عوض میکنی، پس من میروم
1424
01:04:03,359 –> 01:04:06,670
هزار و هفتصد فکر کرد
1425
01:04:06,670 –> 01:04:10,710
شصت و شصت و شصت و شصت بله دوباره
1426
01:04:10,710 –> 01:04:13,540
مقدار دیگری و تنظیم مجدد شمارنده
1427
01:04:13,540 –> 01:04:16,450
و همیشه دره ای را که هست تغییر می دهد
1428
01:04:16,450 –> 01:04:19,420
کاملاً تصادفی کاملاً تصادفی است
1429
01:04:19,420 –> 01:04:21,940
شما نمی دانید چه ارزشی دارد
1430
01:04:21,940 –> 01:04:25,690
به درستی این نتیجه یک است
1431
01:04:25,690 –> 01:04:28,480
وضعیت برنج و چرا این کار را انجام می دهد
1432
01:04:28,480 –> 01:04:31,869
خوب اتفاق می افتد این اتفاق می افتد زیرا اگر شما
1433
01:04:31,869 –> 01:04:36,250
جزئیات این عملیات را بررسی کنید
1434
01:04:36,250 –> 01:04:39,490
شمارنده به علاوه برابر با یک چیزی است که شما هستید
1435
01:04:39,490 –> 01:04:41,830
می بینم که در داخل وجود ندارد
1436
01:04:41,830 –> 01:04:44,500
روش انجام این عملیات در فقط
1437
01:04:44,500 –> 01:04:45,190
یک گام
1438
01:04:45,190 –> 01:04:48,109
در واقع اگر داشته باشیم چه می کنیم
1439
01:04:48,109 –> 01:04:50,569
از ارزش های II دانه متاسفم که آن است
1440
01:04:50,569 –> 01:04:53,269
صفر است و می خواهیم افزایش دهیم ببینیم چیست
1441
01:04:53,269 –> 01:04:58,569
ما انجام می دهیم این است که یک کلامی کمکی ایجاد می کنیم
1442
01:04:58,569 –> 01:05:02,479
با مقدار یا کد برابر با c
1443
01:05:02,479 –> 01:05:07,809
به اضافه 1 به طوری که در حال حاضر 1 است و سپس ما تنظیم می کنیم
1444
01:05:07,809 –> 01:05:13,239
مقداری که در اینجا C انجام می دهیم برابر با 2 خروجی است
1445
01:05:13,239 –> 01:05:16,400
این روند معمولی است که کامپیوترها انجام می دهند
1446
01:05:16,400 –> 01:05:18,559
قرار است به دنبال به طوری که دوباره که
1447
01:05:18,559 –> 01:05:21,380
مانند 2 3 عملیات لیست گاو خوب
1448
01:05:21,380 –> 01:05:25,479
ایجاد این مجموع به این نتیجه و سپس
1449
01:05:25,479 –> 01:05:29,059
دوباره آن را برگردانید تا در این لحظه ببینید
1450
01:05:29,059 –> 01:05:33,529
اگر دارید اگر قطعاتی از اینها دارید
1451
01:05:33,529 –> 01:05:36,529
آنها توسط موضوعات مختلف اداره می شوند
1452
01:05:36,529 –> 01:05:40,579
ممکن است روی داده های یکدیگر قدم بگذارند
1453
01:05:40,579 –> 01:05:42,859
فرض کنید شمارنده برابر 0 داریم
1454
01:05:42,859 –> 01:05:45,769
یک کل کل پیشخوان وجود دارد و ما
1455
01:05:45,769 –> 01:05:48,849
این دو رشته را داشته باشید که شروع می شوند
1456
01:05:48,849 –> 01:05:54,769
همزمان 3 این t1 است و شروع می کنند
1457
01:05:54,769 –> 01:05:56,989
با این عملیات ایجاد گاو و
1458
01:05:56,989 –> 01:05:58,969
شمارنده هم همینطور خواهد بود
1459
01:05:58,969 –> 01:06:02,660
آنها ox برابر با C به علاوه 1 خواهند بود
1460
01:06:02,660 –> 01:06:05,209
برای آنها برای هر دوی آنها خواهد بود
1461
01:06:05,209 –> 01:06:09,049
همان C به اضافه 1 پر برای هر دو
1462
01:06:09,049 –> 01:06:12,529
از آنها اما این دو در یک زمان اجرا می شوند
1463
01:06:12,529 –> 01:06:15,170
لحظه دقیقا همان لحظه در
1464
01:06:15,170 –> 01:06:19,430
موازی یعنی C 4 T 1 است
1465
01:06:19,430 –> 01:06:22,640
0 می شود پس 0 به اضافه 1 می شود اما
1466
01:06:22,640 –> 01:06:26,809
همچنین در اینجا 0 برای numb برای خواهد بود
1467
01:06:26,809 –> 01:06:30,709
سه موضوع با عرض پوزش شماره دو بنابراین در این
1468
01:06:30,709 –> 01:06:33,410
لحظه ای که نتیجه a خواهد بود
1469
01:06:33,410 –> 01:06:36,890
برابر با چهار شما برای هر دوی آنها یکسان انجام دهید
1470
01:06:36,890 –> 01:06:38,779
آنها یکی از آنها خواهد بود که در اینجا خواهد بود
1471
01:06:38,779 –> 01:06:42,859
اینجا یکی باش پس فرقی نمیکنه کدوم
1472
01:06:42,859 –> 01:06:46,369
یکی برنده است که مقدار را در اینجا بازگرداند اما
1473
01:06:46,369 –> 01:06:50,569
اساسا ما دو عملیات را اجرا می کنیم و آنها
1474
01:06:50,569 –> 01:06:54,410
هر دو دقیقاً همان حجم را دریافت کردند
1475
01:06:54,410 –> 01:06:58,099
پایان تنها 1 چیزی است که ما اینجا می خواهیم
1476
01:06:58,099 –> 01:07:00,010
من این موضوع را روشن می کنم
1477
01:07:00,010 –> 01:07:02,590
یک نگاه کنید آنچه ما می خواهیم این است که این دو
1478
01:07:02,590 –> 01:07:08,680
نخ ها اگر وقتی a مقدار c0 را می خواند
1479
01:07:08,680 –> 01:07:11,650
به علاوه یک ما اولین موضوع را بردیم که
1480
01:07:11,650 –> 01:07:17,880
C به علاوه یک است، ما می خواهیم آن را تا a صبر کنیم
1481
01:07:17,880 –> 01:07:21,940
برابر یک تا زمانی که این یکی قرار می دهد
1482
01:07:21,940 –> 01:07:24,790
ارزش اینجا و اکنون این را می توان به خواندن ادامه داد
1483
01:07:24,790 –> 01:07:24,940
آی تی
1484
01:07:24,940 –> 01:07:29,590
ما می خواهیم رشته ها جدا شوند و
1485
01:07:29,590 –> 01:07:32,920
ما نمیخواهیم آنها با هم برخورد کنند
1486
01:07:32,920 –> 01:07:36,820
لحظه خواندن یا نوشتن داده ها و ما
1487
01:07:36,820 –> 01:07:39,160
با چیزی که ما می نامیم به آن دست خواهند یافت
1488
01:07:39,160 –> 01:07:42,310
همگام سازی نخ این بسیار است
1489
01:07:42,310 –> 01:07:45,640
مسئله بزرگ در محاسبات بسیار بزرگ است
1490
01:07:45,640 –> 01:07:47,350
معامله آن را در عملیات اتفاق می افتد
1491
01:07:47,350 –> 01:07:49,360
سیستم های زیر سیستم های اولیه اگر شما
1492
01:07:49,360 –> 01:07:51,100
می خواهم در مورد آن بیشتر بخوانید
1493
01:07:51,100 –> 01:07:55,300
هزاران کتاب درباره آنها نوشته شده است
1494
01:07:55,300 –> 01:07:57,280
شما می توانید هر سیستم عاملی را دریافت کنید
1495
01:07:57,280 –> 01:07:59,260
کتاب درسی و قرار است در مورد آن صحبت شود
1496
01:07:59,260 –> 01:08:00,910
یک فصل در مورد وجود خواهد داشت
1497
01:08:00,910 –> 01:08:03,760
همگام سازی آن را تضمین می کنم، بنابراین یک
1498
01:08:03,760 –> 01:08:08,440
کار بسیار بزرگی در محاسبات و راه
1499
01:08:08,440 –> 01:08:11,140
همگام سازی اساسا کار می کند اما در الف
1500
01:08:11,140 –> 01:08:14,880
روش بسیار مفهومی با سیگنال دادن است
1501
01:08:14,880 –> 01:08:18,850
ایالات نشان می دهد که من در این هستم
1502
01:08:18,850 –> 01:08:21,160
لحظه ای که برای مقابله با آن دسترسی دارم
1503
01:08:21,160 –> 01:08:24,160
لطفا با علامت دادن به من دوری کنید
1504
01:08:24,160 –> 01:08:26,620
بهتازگی بهروزرسانی پیشخوان را به پایان رساندهاند
1505
01:08:26,620 –> 01:08:29,080
اکنون می توانید با ایجاد آن را بخوانید و غیره
1506
01:08:29,080 –> 01:08:34,479
سیگنال می دهد و اطلاع می دهد که کسی است
1507
01:08:34,479 –> 01:08:37,270
در حال حاضر از چیزی استفاده می کنید و این
1508
01:08:37,270 –> 01:08:39,580
چیزی که منبع مشترک است
1509
01:08:39,580 –> 01:08:43,120
در حال حاضر مشغول است که در حال حاضر است
1510
01:08:43,120 –> 01:08:46,000
استفاده می شود و یک مثال بسیار خوب این است
1511
01:08:46,000 –> 01:08:48,310
این چراغ ضبط از ماست
1512
01:08:48,310 –> 01:08:50,500
استودیوهای خودم در واقعیت من این عکس را گرفتم
1513
01:08:50,500 –> 01:08:54,759
که در آن به عنوان یک انسان اگر بخواهم از آن استفاده کنم
1514
01:08:54,759 –> 01:08:58,270
استودیو ضبط استودیوی ضبط که
1515
01:08:58,270 –> 01:08:59,859
یک تحقیق سهم چندین وجود دارد
1516
01:08:59,859 –> 01:09:01,920
مربیان و همه ما از آن استفاده می کنیم
1517
01:09:01,920 –> 01:09:05,799
استودیو ضبط اگر بخواهم از آن استفاده کنم
1518
01:09:05,799 –> 01:09:08,560
آقایان شری در حال حاضر به
1519
01:09:08,560 –> 01:09:11,020
در و من می بینم که نور بوده است
1520
01:09:11,020 –> 01:09:13,870
روشن نمی شود
1521
01:09:13,870 –> 01:09:15,460
از منبعی استفاده کنید که من از آن استفاده نخواهم کرد
1522
01:09:15,460 –> 01:09:17,170
استودیوی ضبط چون این بدان معناست
1523
01:09:17,170 –> 01:09:20,080
شخص دیگری از استودیو من استفاده می کند
1524
01:09:20,080 –> 01:09:20,620
کار کردن
1525
01:09:20,620 –> 01:09:24,340
منتظر می مانم تا نور خاموش شود
1526
01:09:24,340 –> 01:09:28,060
خاموش شود و من وارد استودیو شوم
1527
01:09:28,060 –> 01:09:30,279
چون می دانم که کسی فقط دارد
1528
01:09:30,279 –> 01:09:33,430
استفاده از آن منبع را تمام کردم و اکنون من
1529
01:09:33,430 –> 01:09:36,100
می توانید وارد شوید به طور بالقوه وجود دارد
1530
01:09:36,100 –> 01:09:37,960
چندین مربی در بیرون منتظر باشند
1531
01:09:37,960 –> 01:09:41,170
و سپس سوال این است که کدام یک
1532
01:09:41,170 –> 01:09:43,779
به استودیو می رسم و می چرخم
1533
01:09:43,779 –> 01:09:46,960
نور اول در سمت راست آن دیگری است
1534
01:09:46,960 –> 01:09:48,310
مشکل با هماهنگ سازی بنابراین
1535
01:09:48,310 –> 01:09:50,590
از نظر مفهومی همگام سازی است
1536
01:09:50,590 –> 01:09:53,410
حفاظت از منابع مشترک با ارائه
1537
01:09:53,410 –> 01:09:55,570
این سیگنال ها با ارائه این زیبا
1538
01:09:55,570 –> 01:09:59,170
که این به درستی اشاره می کند که کسی دارد
1539
01:09:59,170 –> 01:10:02,950
در حال حاضر از این روروک مخصوص بچه ها و بزرگ استفاده می شود
1540
01:10:02,950 –> 01:10:06,340
معامله در مورد آن این است که همگام سازی است
1541
01:10:06,340 –> 01:10:10,030
معمولا تعاونی این نیست که
1542
01:10:10,030 –> 01:10:12,370
نور یک قدرت فیزیکی دارد که هست
1543
01:10:12,370 –> 01:10:14,770
مانع ورود من به استودیو شد
1544
01:10:14,770 –> 01:10:17,620
اگر من یک مربی بد هستم اگر من بد هستم
1545
01:10:17,620 –> 01:10:20,350
به هر حال می توانم در را باز کنم و
1546
01:10:20,350 –> 01:10:22,120
ساختار را در وسط قطع کنید
1547
01:10:22,120 –> 01:10:24,010
جلسه ضبط او
1548
01:10:24,010 –> 01:10:26,230
درست است و این فاجعه بار است
1549
01:10:26,230 –> 01:10:30,040
دو ساعت ضبط را از دست خواهم داد
1550
01:10:30,040 –> 01:10:31,900
چون من در وسط آن قدم می گذارم
1551
01:10:31,900 –> 01:10:33,700
به عنوان مثال اگر آنها در یک وب در یک هستند
1552
01:10:33,700 –> 01:10:36,460
وبینار زنده من به طور کامل در حال نابودی هستم
1553
01:10:36,460 –> 01:10:41,230
کار آنها اما من هستم من متوقف می شوم و
1554
01:10:41,230 –> 01:10:45,810
منتظر بیرون چون من هستم
1555
01:10:45,810 –> 01:10:50,170
مربی تعاونی درست من تصمیم گرفتم
1556
01:10:50,170 –> 01:10:53,080
بیرون ماندن اما هیچ چیز متوقف نمی شود
1557
01:10:53,080 –> 01:10:55,750
من در واقع از راه رفتن در و همان
1558
01:10:55,750 –> 01:10:57,990
با تهدیدهای ما اتفاقی خواهد افتاد
1559
01:10:57,990 –> 01:11:01,270
تهدیدهای ما از همگام سازی استفاده می کنند
1560
01:11:01,270 –> 01:11:03,280
روش ها اما همه آنها مقایسه ای هستند
1561
01:11:03,280 –> 01:11:06,010
این همکاری است زیرا ما
1562
01:11:06,010 –> 01:11:09,070
تصمیم گرفته اند کد را در آن بنویسند
1563
01:11:09,070 –> 01:11:12,400
راه در بهترین نیت ما است
1564
01:11:12,400 –> 01:11:14,590
نوشتن کد برای استفاده از همگام سازی
1565
01:11:14,590 –> 01:11:17,170
اما اگر یک قطعه مخرب دارید
1566
01:11:17,170 –> 01:11:20,020
کد یا برنامه نویس شلخته کسی
1567
01:11:20,020 –> 01:11:22,080
فراموش کردم از آن همگام سازی استفاده کنم
1568
01:11:22,080 –> 01:11:26,019
مکانیزم پس از آن هیچ چیز مانع می شود
1569
01:11:26,019 –> 01:11:29,710
داده های به اشتراک گذاشته شده خراب می شوند پس بیایید
1570
01:11:29,710 –> 01:11:31,539
اکنون با جزئیاتی که می خواهیم شروع کنید
1571
01:11:31,539 –> 01:11:33,999
اولین مکانیسم همگام سازی ما را ببینید
1572
01:11:33,999 –> 01:11:37,210
که یک قفل است، بسیار ساده است
1573
01:11:37,210 –> 01:11:40,289
احتمالا یکی از قدیمی ترین نوع
1574
01:11:40,289 –> 01:11:42,820
اولیه های همگام سازی که ما استفاده می کنیم
1575
01:11:42,820 –> 01:11:45,010
و همگام سازی چندگانه وجود دارد
1576
01:11:45,010 –> 01:11:47,289
مکانیسم هایی مانند قفل سمافورها در آنجا
1577
01:11:47,289 –> 01:11:49,420
در این مورد ما چندین مورد هستند
1578
01:11:49,420 –> 01:11:51,909
دوباره از قفل استفاده خواهم کرد این یکی از این موارد است
1579
01:11:51,909 –> 01:11:54,309
ساده ترین آنها معمولاً متقابل است
1580
01:11:54,309 –> 01:11:56,380
قفل محرومیت نیز mutex نامیده می شود
1581
01:11:56,380 –> 01:12:00,159
چندین نام دارد که اساساً یک قفل کار می کند
1582
01:12:00,159 –> 01:12:02,590
به عنوان یک قفل واقعی می دانید که این وجود دارد
1583
01:12:02,590 –> 01:12:05,739
منبع را به اشتراک بگذارید و یک منبع باز وجود دارد
1584
01:12:05,739 –> 01:12:08,050
ما سعی می کنم خیلی نقاشی بکشم
1585
01:12:08,050 –> 01:12:10,780
این یک قفل باز است که کسی از آن استفاده می کند
1586
01:12:10,780 –> 01:12:14,710
منبع، بنابراین آنها فقط آنها را تعطیل می کنند
1587
01:12:14,710 –> 01:12:17,590
وقتی هستند قفل را ببندید
1588
01:12:17,590 –> 01:12:20,619
وقتی تمام شد آماده هستند
1589
01:12:20,619 –> 01:12:24,309
با استفاده از قفلی که می خواهند آن را باز کنند
1590
01:12:24,309 –> 01:12:26,139
قفل کنید و اکنون در دسترس خواهد بود
1591
01:12:26,139 –> 01:12:28,210
شخص دیگری برای رفتن و گرفتن آن
1592
01:12:28,210 –> 01:12:32,139
شخص دیگری برای رفتن و استفاده از آن تا راه است
1593
01:12:32,139 –> 01:12:35,320
با ایجاد یک نمونه از آن کار می کند
1594
01:12:35,320 –> 01:12:37,179
قفل قفل به اشتراک گذاشته خواهد شد
1595
01:12:37,179 –> 01:12:41,349
همه از همان قفل و نخ استفاده می کنند
1596
01:12:41,349 –> 01:12:43,630
که روی آن قفل کار خواهد کرد سعی خواهد کرد
1597
01:12:43,630 –> 01:12:45,909
اول به دست آوردن قفل این است
1598
01:12:45,909 –> 01:12:48,639
اساسا من می خواهم از این منبع استفاده کنم
1599
01:12:48,639 –> 01:12:50,679
این منابع چیزی است که ما درست انجام می دهیم
1600
01:12:50,679 –> 01:12:52,539
اینجا در میان بنابراین وقتی از این استفاده می کنم
1601
01:12:52,539 –> 01:12:55,449
منبع من می خواهم قفل را به دست بیاورم
1602
01:12:55,449 –> 01:12:59,980
حالا من صاحب این قفل بودم، بنابراین هیچ کس دیگری آن را نداشت
1603
01:12:59,980 –> 01:13:02,650
استفاده از این کار من تضمین خواهد شد
1604
01:13:02,650 –> 01:13:07,449
که هیچ کس دیگری هیچ رشته دیگری نخواهد بود
1605
01:13:07,449 –> 01:13:09,670
قادر به به دست آوردن قفل بنابراین
1606
01:13:09,670 –> 01:13:13,059
عملیات بدست آوردن روی یک قفل اتمی است اگر
1607
01:13:13,059 –> 01:13:16,539
من یک خروجی واقعی از این که
1608
01:13:16,539 –> 01:13:19,929
به این معنی است که من تنها مالک آن هستم
1609
01:13:19,929 –> 01:13:25,389
قفل کنید سپس من می توانم برای هر کاری انجام دهم و با آن کار کنم
1610
01:13:25,389 –> 01:13:27,400
می تواند هر کاری که من بخواهم انجام دهد
1611
01:13:27,400 –> 01:13:29,769
معمولاً وقتی ظاهری را که هستید به دست می آورید
1612
01:13:29,769 –> 01:13:31,539
چند عملیات روی آن انجام خواهد داد
1613
01:13:31,539 –> 01:13:33,909
منبع مشترکی که دارید پس بیایید بگوییم
1614
01:13:33,909 –> 01:13:36,610
این متغیر شمارنده لحظه ای است
1615
01:13:36,610 –> 01:13:37,780
افزایش دهد
1616
01:13:37,780 –> 01:13:40,930
اگر شمارنده در آن لحظه خاص باشد
1617
01:13:40,930 –> 01:13:43,810
هنگامی که شما یک قفل هر کار به دست آورد
1618
01:13:43,810 –> 01:13:47,980
که به طور بالقوه نیست آن را نمی خواهد
1619
01:13:47,980 –> 01:13:49,530
رنج بردن از یک وضعیت نژادی
1620
01:13:49,530 –> 01:13:52,000
به طور بالقوه از آن خارج می شود
1621
01:13:52,000 –> 01:13:54,370
قفل شود زیرا عملیات ثبت می تواند
1622
01:13:54,370 –> 01:13:56,440
اگر
1623
01:13:56,440 –> 01:13:59,470
منبع اشغال است شما نمی توانید
1624
01:13:59,470 –> 01:14:00,940
قفل را بدست آورید و نخواهید بود
1625
01:14:00,940 –> 01:14:03,820
قادر به انجام آن کار بنابراین معمولا هر چیزی
1626
01:14:03,820 –> 01:14:06,190
که با روز مطمئنی سروکار ندارد
1627
01:14:06,190 –> 01:14:09,190
یک بار بیرون از قفل میمانم
1628
01:14:09,190 –> 01:14:10,450
دوباره قفل را بدست آورید
1629
01:14:10,450 –> 01:14:12,970
هر کاری میخوای انجام میدی
1630
01:14:12,970 –> 01:14:14,830
فقط به اشتراک گذاری داده ها مربوط می شود
1631
01:14:14,830 –> 01:14:17,140
منابع را به اشتراک بگذارید و پس از آن یک بار
1632
01:14:17,140 –> 01:14:20,020
آیا قفلی را که می گویی من هستم آزاد کردی؟
1633
01:14:20,020 –> 01:14:22,840
هرکسی که بخواهد این کار را انجام دهد
1634
01:14:22,840 –> 01:14:25,240
آنها می توانند دوباره قفل را بدست آورند، پس بیایید
1635
01:14:25,240 –> 01:14:30,310
ببینید چگونه کار می کند من یک قفل به دست آوردم
1636
01:14:30,310 –> 01:14:35,700
کاری کرد و بعد قفل تمام شد
1637
01:14:36,420 –> 01:14:40,720
ببخشید که قفل تمام شد
1638
01:14:40,720 –> 01:14:44,320
من 10 ثانیه خوابیدم یعنی
1639
01:14:44,320 –> 01:14:46,950
که قرار است به اشتراک بگذارم یا متاسفم
1640
01:14:46,950 –> 01:14:50,590
آیا من قفل را در اختیار خواهم داشت
1641
01:14:50,590 –> 01:14:53,470
این تاپیک را 10 ساعت مشغول خواهم کرد
1642
01:14:53,470 –> 01:14:56,050
چند ثانیه و سپس من آن را آزاد می کنم
1643
01:14:56,050 –> 01:14:57,970
چه اتفاقی می افتد اگر من سعی کنم به دست بیاورم
1644
01:14:57,970 –> 01:14:58,450
قفل کردن
1645
01:14:58,450 –> 01:15:02,680
در حالی که این نخ ها قفل خوبی دارند
1646
01:15:02,680 –> 01:15:04,600
مسدود می شود پس اجازه دهید آن را به شما نشان دهم
1647
01:15:04,600 –> 01:15:08,410
TDOT شروع می شود به دست آوردن قفل
1648
01:15:08,410 –> 01:15:12,610
قفل به دست آوردن قفل به نظر می رسد بله
1649
01:15:12,610 –> 01:15:15,580
این قفل است اگر سعی کنم چه اتفاقی می افتد
1650
01:15:15,580 –> 01:15:17,860
با بدست آوردن آن، کد را اجرا می کنم
1651
01:15:17,860 –> 01:15:19,990
دوباره زمان اینجا را افزایش خواهم داد
1652
01:15:19,990 –> 01:15:22,450
بنابراین شما می توانید به وضوح ببینید چه چیزی قرار است
1653
01:15:22,450 –> 01:15:24,730
اتفاق می افتد من دوباره یک تاپیک راه اندازی می کنم
1654
01:15:24,730 –> 01:15:27,160
آن قفل است و اکنون ما سعی می کنیم آن را خریداری کنیم
1655
01:15:27,160 –> 01:15:31,750
آن را می بینید و همانطور که می بینید این روند دارد
1656
01:15:31,750 –> 01:15:35,170
فقط متوقف شد و منتظر به دست آوردن آن است
1657
01:15:35,170 –> 01:15:38,650
قفل آنها به دست آوردن عملیات آن می خواهم
1658
01:15:38,650 –> 01:15:42,880
تا زمانی که موضوع هر کسی را مسدود کنید
1659
01:15:42,880 –> 01:15:45,760
هر موضوعی که در واقع با موفقیت انجام شد
1660
01:15:45,760 –> 01:15:50,080
به دست می آورد قفل خوب در حال حاضر اصلی
1661
01:15:50,080 –> 01:15:50,470
نخ
1662
01:15:50,470 –> 01:15:53,260
دارای یک گزارش است و ما می توانیم از یک نقاشی استفاده کنیم
1663
01:15:53,260 –> 01:15:57,340
این را ساده کنید تا ما این موضوع را داشته باشیم
1664
01:15:57,340 –> 01:16:00,900
بیایید یک شرلوک را در اینجا قرار دهیم و
1665
01:16:00,900 –> 01:16:04,210
می خواهیم بگوییم این باز است
1666
01:16:04,210 –> 01:16:06,610
اینجا باز است و اتفاقی که اینجا افتاد بود
1667
01:16:06,610 –> 01:16:10,240
که در این خط موضوع را شروع کنید
1668
01:16:10,240 –> 01:16:13,150
به دست آورد قفل حق بنابراین در این مورد است
1669
01:16:13,150 –> 01:16:17,980
این یکی این است که بیایید T the the را قرار دهیم
1670
01:16:17,980 –> 01:16:20,950
صاحب قفل تا زمانی که اصلی
1671
01:16:20,950 –> 01:16:24,220
موضوع یا کد اصلی در فرآیند تلاش می کند
1672
01:16:24,220 –> 01:16:28,270
برای دسترسی دوباره به گزارش در اینجا تلاش می کند
1673
01:16:28,270 –> 01:16:31,060
قفل است و قفل است پس درست است
1674
01:16:31,060 –> 01:16:33,460
منتظر آنجا منتظر است منتظر است
1675
01:16:33,460 –> 01:16:36,570
تا زمانی که قفل آزاد شود
1676
01:16:36,570 –> 01:16:40,690
وقتی رفتی تمیز می کنم
1677
01:16:40,690 –> 01:16:50,770
این یک بار V موضوع اینجا منتشر می شود
1678
01:16:50,770 –> 01:16:54,400
قفل آن خالی است اکنون موضوع اصلی است
1679
01:16:54,400 –> 01:16:57,580
اکنون می تواند مالکیت آن قفل را در دست بگیرد
1680
01:16:57,580 –> 01:17:01,630
لاگ متعلق به این رشته اصلی است اما
1681
01:17:01,630 –> 01:17:03,580
الان این تاپیک رو دارم تموم شد
1682
01:17:03,580 –> 01:17:06,370
من یک تاپیک جدید در اینجا ایجاد کردم و من
1683
01:17:06,370 –> 01:17:11,350
آن را در اینجا قرار دهید خوب این کار زمانی انجام می شود که اگر
1684
01:17:11,350 –> 01:17:14,500
من آن را دوباره اجرا می کنم و به اینجا در این می رود
1685
01:17:14,500 –> 01:17:17,140
خط در تلاش برای به دست آوردن قفل که
1686
01:17:17,140 –> 01:17:19,870
تاپیک حداقل برای همیشه مسدود خواهد شد
1687
01:17:19,870 –> 01:17:23,260
تا زمانی که آن را آزاد نکنم، پس این چیزی است که ما هستیم
1688
01:17:23,260 –> 01:17:27,520
من می خواهم موضوع را شروع کنم
1689
01:17:27,520 –> 01:17:31,680
سعی دارد قفلی را که هست به دست آورد
1690
01:17:31,680 –> 01:17:34,930
همین جا خوابیدی فقط همین جا را متوقف کن
1691
01:17:34,930 –> 01:17:37,770
در حال مسدود کردن موضوع است و منتظر است
1692
01:17:37,770 –> 01:17:40,330
آنچه من می توانم درست انجام دهم این است
1693
01:17:40,330 –> 01:17:42,010
منتظر آنجا منتظر است منتظر است
1694
01:17:42,010 –> 01:17:43,870
منتظر است منتظر است چه کاری می توانم انجام دهم
1695
01:17:43,870 –> 01:17:46,210
به خوبی می توانم بگویم از موضوع اصلی است
1696
01:17:46,210 –> 01:17:50,130
حالا قفل را رها کنید فقط آن را رها کنید و
1697
01:17:50,130 –> 01:17:54,090
من این کار را می کنم، قفل را آزاد می کنم
1698
01:17:54,090 –> 01:18:02,200
بلافاصله گروه کر محلی درست گفت
1699
01:18:02,200 –> 01:18:03,350
اینجا
1700
01:18:03,350 –> 01:18:06,950
به نظر اکتسابی و سپس تمام شد
1701
01:18:06,950 –> 01:18:08,780
لغزش و همه اینها چون من این کار را نکردم
1702
01:18:08,780 –> 01:18:10,730
گذشت زمان اما ایده این است که
1703
01:18:10,730 –> 01:18:13,610
تاپیک متوقف شد و منتظر ماند
1704
01:18:13,610 –> 01:18:17,990
مسدود شد چون من تاپیک اصلی داشتم
1705
01:18:17,990 –> 01:18:21,290
قفل شده لحظه ای را به دست آورد که من
1706
01:18:21,290 –> 01:18:23,870
متوجه شد که رشته دیگر قادر است
1707
01:18:23,870 –> 01:18:27,230
آن را اجرا کنید تا با استفاده از همه اینها که ممکن است
1708
01:18:27,230 –> 01:18:29,360
گیج کننده باشید ما از یک واقعی استفاده خواهیم کرد
1709
01:18:29,360 –> 01:18:32,210
به عنوان مثال و ما می خواهیم در مورد خود را تعمیر کنید
1710
01:18:32,210 –> 01:18:35,270
شمارنده پس از 1000 عملیات را به خاطر بسپارید
1711
01:18:35,270 –> 01:18:37,940
ده تاپیک مختلف منتظر ما بودند
1712
01:18:37,940 –> 01:18:41,930
انتظار می رود که ده هزار نفر وارد شوند
1713
01:18:41,930 –> 01:18:43,720
نتیجه نهایی در دیدار نهایی
1714
01:18:43,720 –> 01:18:46,940
بنابراین راهی که ما این کار را انجام می دهیم برای آن است
1715
01:18:46,940 –> 01:18:50,420
در هر تکرار قبل از اینکه این را اصلاح کنیم
1716
01:18:50,420 –> 01:18:53,090
داده های مشترک این داده های مشترک مهم است
1717
01:18:53,090 –> 01:18:56,600
ما قفل را به دست می آوریم پس در آن
1718
01:18:56,600 –> 01:18:59,860
لحظه ای که می دانیم هیچ کس دیگری این کار را نخواهد کرد
1719
01:18:59,860 –> 01:19:02,840
به روز رسانی که پیشخوان ما تنها خواهیم داشت
1720
01:19:02,840 –> 01:19:04,610
مالکیت آن پیشخوان ما می خواهیم
1721
01:19:04,610 –> 01:19:07,040
آن را به روز کنید و سپس ما فورا
1722
01:19:07,040 –> 01:19:09,860
یک قفل را آزاد کنید تا دیگران منتظر بمانند
1723
01:19:09,860 –> 01:19:12,920
برای دریافت و دریافت doc قادر خواهد بود
1724
01:19:12,920 –> 01:19:16,610
این کار را انجام دهید، بنابراین من یک مقداردهی اولیه را شروع می کنم
1725
01:19:16,610 –> 01:19:18,740
شمارنده مقداردهی اولیه افزایش یا تعریف
1726
01:19:18,740 –> 01:19:21,440
افزایش ورود به سیستم نهایی به یاد داشته باشید که
1727
01:19:21,440 –> 01:19:24,920
من قفل منبع کمیاب است – همه ما داریم
1728
01:19:24,920 –> 01:19:26,570
اگر از همان قفل استفاده می کنیم
1729
01:19:26,570 –> 01:19:28,280
قفل های مختلف هیچ معنایی ندارد
1730
01:19:28,280 –> 01:19:32,780
و من تمام رشته ها و
1731
01:19:32,780 –> 01:19:35,060
حالا من تمام تاپیک ها را شروع می کنم و
1732
01:19:35,060 –> 01:19:36,800
آنها کار می کنند من می درخشم و منتظر می مانم
1733
01:19:36,800 –> 01:19:38,960
تا زمانی که آنها تمام شوند، همه آنها تمام می شوند
1734
01:19:38,960 –> 01:19:41,750
خیلی سریع و بیایید نتیجه را ببینیم
1735
01:19:41,750 –> 01:19:45,770
شمارنده شمارنده طبق انتظار 10000 است
1736
01:19:45,770 –> 01:19:50,450
بیایید کل کار را دوباره 10000 I انجام دهیم
1737
01:19:50,450 –> 01:19:53,000
می توانم این کارها را هزار بار انجام دهم و من می توانم
1738
01:19:53,000 –> 01:19:56,300
اکنون به شما تضمین می دهد که اینها کار می کنند
1739
01:19:56,300 –> 01:20:00,140
زیرا هیچ دو موضوعی تغییر نخواهد کرد
1740
01:20:00,140 –> 01:20:06,380
شمارنده در همان لحظه حالا برویم
1741
01:20:06,380 –> 01:20:09,020
دوباره به مشکلاتی که می توانستیم برگردیم
1742
01:20:09,020 –> 01:20:12,050
به طور بالقوه با تهدیدات و کرونوس مواجه می شوند
1743
01:20:12,050 –> 01:20:14,500
اولین مورد
1744
01:20:14,500 –> 01:20:18,850
این موضوع است و ما می گوییم که این
1745
01:20:18,850 –> 01:20:21,820
یک کار مشترک بود که ما بودیم
1746
01:20:21,820 –> 01:20:26,710
در حال اجرا این کد را نوشتم و بودم
1747
01:20:26,710 –> 01:20:30,180
به اندازه کافی متفکر برای گذاشتن قفل قبل
1748
01:20:30,180 –> 01:20:32,500
دسترسی به برخورد اما دوباره این خواهد شد
1749
01:20:32,500 –> 01:20:34,600
نیاز به درک من دارد
1750
01:20:34,600 –> 01:20:37,230
مشکل من این است که به اندازه کافی مراقب باشم
1751
01:20:37,230 –> 01:20:39,910
افزایش از جمله اخیرا یک قفل برداشت
1752
01:20:39,910 –> 01:20:45,310
یا همکار من که شما بیدار می دانید
1753
01:20:45,310 –> 01:20:47,800
در لحظه بررسی CO به من اجازه دهید
1754
01:20:47,800 –> 01:20:50,290
ببینید که من یک قفل و غیره را فراموش کرده ام
1755
01:20:50,290 –> 01:20:52,170
چندین چیز ممکن است اشتباه پیش برود
1756
01:20:52,170 –> 01:20:56,080
چهار مشکل ذکر شده در اینجا وجود دارد
1757
01:20:56,080 –> 01:20:57,760
اولین چیزی که ممکن است فراموش کنید استفاده کنید
1758
01:20:57,760 –> 01:21:01,900
قفل می دانی که دوست ندارم اگر باشی
1759
01:21:01,900 –> 01:21:03,850
اگر فقط عجله دارید و هستید
1760
01:21:03,850 –> 01:21:05,860
تغییر برخی از متغیرهای جهانی شما
1761
01:21:05,860 –> 01:21:07,630
ممکن است متوجه نباشید که شما ممکن است باشید
1762
01:21:07,630 –> 01:21:09,970
قدم گذاشتن در شرایط مسابقه پس نه
1763
01:21:09,970 –> 01:21:11,890
درک درست شرایط مسابقه
1764
01:21:11,890 –> 01:21:14,220
اطلاعات اشتراک گذاری را به درستی درک نمی کند
1765
01:21:14,220 –> 01:21:17,710
فقط ممکن است مشکلی باشد که شما کمبود آن را می دانید
1766
01:21:17,710 –> 01:21:19,300
تجربه زمانی که شما شروع به
1767
01:21:19,300 –> 01:21:21,550
اولین همزمانی خود را بنویسید
1768
01:21:21,550 –> 01:21:23,680
برنامه هایی که شما فاقد آن تجربه خواهید بود
1769
01:21:23,680 –> 01:21:26,500
پس این خود مشکل دوم است
1770
01:21:26,500 –> 01:21:30,090
مشکل این است که شما ممکن است فراموش کنید
1771
01:21:30,090 –> 01:21:33,790
اگر من آن را حذف کنم، قفل بلاتر را به دست آورید
1772
01:21:33,790 –> 01:21:36,010
این خط و من این پیکان را امتحان نکرده ام
1773
01:21:36,010 –> 01:21:39,610
اگر این را حذف کردم، ادامه دهید و این کار را انجام دهید
1774
01:21:39,610 –> 01:21:41,440
خط اگر من کد را اجرا نمی کنم
1775
01:21:41,440 –> 01:21:44,200
حذف این خط و و هیچ کس در واقع
1776
01:21:44,200 –> 01:21:46,840
قفل را بدست می آورد که انگار می دانید
1777
01:21:46,840 –> 01:21:48,910
داشتن یک قفل باز مانند نداشتن شانس است
1778
01:21:48,910 –> 01:21:51,970
بنابراین به هر حال مشکلات پیش خواهد آمد
1779
01:21:51,970 –> 01:21:54,550
در این مورد ما ملزم به انجام آن هستیم
1780
01:21:54,550 –> 01:21:58,270
به دست آوردن قفل در لحظه ای که ما ما
1781
01:21:58,270 –> 01:22:02,140
به آن نیاز دارید و در بالای آن قفل است
1782
01:22:02,140 –> 01:22:05,320
به نوعی یک کلمه فلسفی داریم
1783
01:22:05,320 –> 01:22:06,880
در کد ما وجود دارد اما اینطور نیست
1784
01:22:06,880 –> 01:22:09,340
محافظ پیشخوان هیچ چیز محافظت نمی کند
1785
01:22:09,340 –> 01:22:12,550
شمارنده می توانستم داشته باشم می توانستم داشته باشم
1786
01:22:12,550 –> 01:22:16,660
پیشخوان اصلاح شده قبل از قفل و شما
1787
01:22:16,660 –> 01:22:18,820
می دانم آنها از من پرسیدند که چگونه از قفل استفاده کنم
1788
01:22:18,820 –> 01:22:21,940
بله من از آن استفاده کردم اما کسی نمی گوید
1789
01:22:21,940 –> 01:22:24,220
جایی که من از آن استفاده کردم و این بسیار زیبا است
1790
01:22:24,220 –> 01:22:26,770
مثال گنگ با عرض پوزش درست مثل نهایی است
1791
01:22:26,770 –> 01:22:27,920
خطوط فنی کد
1792
01:22:27,920 –> 01:22:30,050
اما در یک برنامه پیچیده تر در
1793
01:22:30,050 –> 01:22:32,540
که شما یک تن از داده های مشترک و
1794
01:22:32,540 –> 01:22:35,900
چندین قفل همه در اطراف آنها پراکنده می شوند
1795
01:22:35,900 –> 01:22:38,240
مشکلی خواهد بود که شما ممکن است قرار دهید
1796
01:22:38,240 –> 01:22:40,700
قفل در مکان نامناسب به دست می آورد یا
1797
01:22:40,700 –> 01:22:43,960
ممکن است فراموشش کنید که اصلا آن را بگذارید
1798
01:22:43,960 –> 01:22:46,730
پس مشکل از انتقاد شماست
1799
01:22:46,730 –> 01:22:48,590
بخش دوباره کاری انجام می دهد که
1800
01:22:48,590 –> 01:22:51,260
قفل محافظ است یا نه و در نهایت
1801
01:22:51,260 –> 01:22:54,260
اتفاقی که می افتد، اتفاق بزرگی است
1802
01:22:54,260 –> 01:22:56,720
اگر فراموش کردید یک قفل را آزاد کنید اگر من
1803
01:22:56,720 –> 01:22:58,400
فراموش کنید که قفل را تمام کنید
1804
01:22:58,400 –> 01:23:01,730
اگر من تاپیک ها برای همیشه مسدود می شوند
1805
01:23:01,730 –> 01:23:04,160
یک باگ در برنامه من وجود دارد و من نیستم
1806
01:23:04,160 –> 01:23:07,220
انتشار گزارش با عرض پوزش از همه
1807
01:23:07,220 –> 01:23:11,120
برنامه ها یا موضوعات دیگر متاسفم
1808
01:23:11,120 –> 01:23:15,610
همه برای همیشه مسدود خواهند شد
1809
01:23:15,890 –> 01:23:17,510
اجازه دهید در واقع یک مشکل را با آن ببینیم
1810
01:23:17,510 –> 01:23:20,420
من یک ظاهر جدید ایجاد خواهم کرد و هستم
1811
01:23:20,420 –> 01:23:24,590
این تابع را در اینجا تعریف می کنیم
1812
01:23:24,590 –> 01:23:27,920
من آن را شروع می کنم و آنچه قرار است انجام شود
1813
01:23:27,920 –> 01:23:30,460
در اینجا اتفاق می افتد که من می خواهم مکث کنم
1814
01:23:30,460 –> 01:23:34,040
معیوب است، هنگام ورود خطا می گویم
1815
01:23:34,040 –> 01:23:36,530
پارامتر خواب پس چه چیزی ندارد
1816
01:23:36,530 –> 01:23:38,300
در اینجا اتفاق می افتد که این کد قرار است
1817
01:23:38,300 –> 01:23:40,400
اجرا کن قفلی را که من دارم به دست خواهد آورد
1818
01:23:40,400 –> 01:23:42,980
رها کن پس بگذار بگذار بگویم من
1819
01:23:42,980 –> 01:23:45,830
یک درخواست کشش ارسال کنید و این را بررسی کنید
1820
01:23:45,830 –> 01:23:48,620
کد و قفل را در اینجا آزاد می بینید
1821
01:23:48,620 –> 01:23:50,630
و شما اینجا گروه کر و
1822
01:23:50,630 –> 01:23:52,520
همه چیز منطقی است و شما هی می گویید
1823
01:23:52,520 –> 01:23:55,280
کد این کد کاملا اجرا می شود اما
1824
01:23:55,280 –> 01:23:57,650
مشکلی وجود دارد اگر این اتفاق بیفتد
1825
01:23:57,650 –> 01:23:59,600
پارامتر لغزش نامعتبر است زیرا قرار است
1826
01:23:59,600 –> 01:24:00,350
در اینجا است
1827
01:24:00,350 –> 01:24:04,370
لحظهای که این کد اجرا میشود
1828
01:24:04,370 –> 01:24:07,280
یک استثنا را مطرح کنید و موضوع است
1829
01:24:07,280 –> 01:24:10,490
به طور کلی متوقف خواهد شد تا
1830
01:24:10,490 –> 01:24:13,310
یعنی ما هرگز به این نخواهیم رسید
1831
01:24:13,310 –> 01:24:16,310
بخش و من هرگز آزاد نمی کنم
1832
01:24:16,310 –> 01:24:21,140
قفل کنید پس حالا بیایید آن را اجرا کنیم
1833
01:24:21,140 –> 01:24:24,350
به استثنای قفل در حال حاضر به دست آورد
1834
01:24:24,350 –> 01:24:28,430
این قفل هنوز در این دستیابی است
1835
01:24:28,430 –> 01:24:31,310
فرآیندی که هیچ کس دیگری نمی تواند
1836
01:24:31,310 –> 01:24:34,370
به دست آوردن فقط آن را می خواهم در آنجا آویزان است
1837
01:24:34,370 –> 01:24:37,330
forever کد من اکنون برای همیشه آویزان است
1838
01:24:37,330 –> 01:24:40,150
من این را قطع می کنم
1839
01:24:40,150 –> 01:24:42,080
مصنوعی هیچ راهی برای انجام وجود ندارد
1840
01:24:42,080 –> 01:24:45,260
این در کد شما زنده است اما دوباره این
1841
01:24:45,260 –> 01:24:48,010
قفل های چیز نمی توانند کاری در مورد آن انجام دهند
1842
01:24:48,010 –> 01:24:52,190
بنابراین راهی که میتوانیم این مشکل را حل کنیم، عبور دادن است
1843
01:24:52,190 –> 01:24:55,490
تایم اوت در فرآیند کسب بنابراین
1844
01:24:55,490 –> 01:24:57,080
فرض کنید من می خواهم قفل را بدست بیاورم اما من
1845
01:24:57,080 –> 01:24:59,300
بگو من فقط هشدار می دهم که اینجا منتظر بمانید
1846
01:24:59,300 –> 01:25:02,180
دو ثانیه چون اگر لاگ نشده باشد
1847
01:25:02,180 –> 01:25:04,940
دو ثانیه است که منتشر نشده است
1848
01:25:04,940 –> 01:25:08,090
به طور بالقوه مشکلی است که می توانید مطرح کنید
1849
01:25:08,090 –> 01:25:10,100
هر ارزشی که می خواهید اینجا یا می توانید
1850
01:25:10,100 –> 01:25:14,630
حتی از ما بیرون برو تا جایی که بگویم من
1851
01:25:14,630 –> 01:25:16,850
میخواهم بلوکی را که به نظر من انجام میدهم به دست بیاورم
1852
01:25:16,850 –> 01:25:19,490
بلوک نمی خواهم، بنابراین اکنون نتیجه است
1853
01:25:19,490 –> 01:25:20,570
نادرست
1854
01:25:20,570 –> 01:25:23,990
اگر لاگ به دست نیامد و اگر درست باشد
1855
01:25:23,990 –> 01:25:27,230
شما با موفقیت قفل را به دست آورده اید
1856
01:25:27,230 –> 01:25:31,670
بنابراین این ها مسدود نمی شوند ما می توانیم آزاد کنیم
1857
01:25:31,670 –> 01:25:37,520
قفل و در حال حاضر همه کار می کند بنابراین این است
1858
01:25:37,520 –> 01:25:40,070
مشکل بسیار رایج شما کد را خوانده اید
1859
01:25:40,070 –> 01:25:43,940
یک فراخوانی وجود دارد و یک تماس وجود دارد
1860
01:25:43,940 –> 01:25:46,550
انتشار کد تماس اما هر چیزی در
1861
01:25:46,550 –> 01:25:49,040
بین هر چیزی در بین قبل از
1862
01:25:49,040 –> 01:25:53,240
اگر چیزی خراب شد، قفل را رها کنید
1863
01:25:53,240 –> 01:25:56,180
برای همیشه به دست می آید آن را کاملا خواهد بود
1864
01:25:56,180 –> 01:25:58,550
برای همیشه چون استثنا خواهد بود
1865
01:25:58,550 –> 01:26:01,160
جلوگیری از اجرای این خط به طوری که یک
1866
01:26:01,160 –> 01:26:02,660
الگوی بسیار رایج در برنامه نویسی در
1867
01:26:02,660 –> 01:26:04,970
عمومی هنگام دسترسی به دسترسی
1868
01:26:04,970 –> 01:26:06,680
پایگاه های داده هنگام دسترسی به فایل ها وقتی
1869
01:26:06,680 –> 01:26:09,320
دسترسی در شبکه ها هنگام دسترسی
1870
01:26:09,320 –> 01:26:12,640
این منابع پرهزینه مهم و
1871
01:26:12,640 –> 01:26:16,850
در پایتون راهی برای غلبه بر وجود دارد
1872
01:26:16,850 –> 01:26:19,120
آن مشکلات با استفاده از
1873
01:26:19,120 –> 01:26:22,430
مدیران زمینه درست است تا با
1874
01:26:22,430 –> 01:26:25,010
بیانیه یک مدیر زمینه در پایتون است
1875
01:26:25,010 –> 01:26:27,620
و کاری که قرار است انجام دهد این است که اجرا شود
1876
01:26:27,620 –> 01:26:29,780
اساساً این الگو در اینجاست
1877
01:26:29,780 –> 01:26:32,120
قفلی را که امتحان خواهد کرد به دست خواهد آورد
1878
01:26:32,120 –> 01:26:34,370
اجرای این بخش حیاتی و اگر
1879
01:26:34,370 –> 01:26:36,740
هر چیزی شکست می خورد مهم نیست
1880
01:26:36,740 –> 01:26:40,330
در صورت عدم موفقیت همیشه یک قفل آزاد می شود
1881
01:26:40,330 –> 01:26:43,370
صرف نظر از شرایطی که کار می کند
1882
01:26:43,370 –> 01:26:46,130
یا اگر نکند اگر منفجر شود چون
1883
01:26:46,130 –> 01:26:48,080
چون استثناست یا اگر اینطور نباشد
1884
01:26:48,080 –> 01:26:50,660
منفجر کردن همیشه قفل ها را آزاد می کند
1885
01:26:50,660 –> 01:26:52,050
این الگویی است که
1886
01:26:52,050 –> 01:26:54,060
عبارت with دنبال می شود پس ما هستیم
1887
01:26:54,060 –> 01:26:56,730
می خواهم این کار را انجام دهم
1888
01:26:56,730 –> 01:26:59,730
قفل من شروع می کنم آن قفل بود
1889
01:26:59,730 –> 01:27:03,870
ظاهر به دست آمده یک ماشین بود و اکنون ما هستیم
1890
01:27:03,870 –> 01:27:09,870
مثال را با مشکل اجرا می کنم
1891
01:27:09,870 –> 01:27:14,760
اونی که کد رو منفجر میکنه منفجر شد
1892
01:27:14,760 –>