WEBVTT

1
00:07.120 --> 00:12.460
Evet arkadaşlar, şimdi bu videoda, bir
önceki

2
00:12.460 --> 00:14.230
ders radyosunda tartıştığımız problem
cümlesinin çözümünü tartışacaktık.

3
00:14.800 --> 00:22.180
Dolayısıyla sorun ifadesi, SDP sürecinin
mantığının listelenen birkaç

4
00:22.180 --> 00:25.090
kabile bağlamında eşzamanlı olarak
yürütüldüğü konusunda açıktı.

5
00:25.630 --> 00:31.210
Ve bu, işlem olması istenen varsayımlar
olsa da,

6
00:31.210 --> 00:31.840
tek iş parçacıklı bir işlem olmak
zorundadır.

7
00:32.560 --> 00:34.600
Yani şimdi çözüm çok basit.

8
00:34.600 --> 00:41.620
Olay döngümüzü adım sürecimizle entegre
edeceğiz ve

9
00:41.620 --> 00:42.520
Hollywood Loop'un aslında bu sorunu
çözdüğünü göreceğiz.

10
00:43.660 --> 00:50.200
Böylece olay döngümüzün geri döndüğünü
görebilirsiniz ve çözüm çok basittir,

11
00:50.200 --> 01:00.340
her dinleyici kabilesi hesaplamasını olay
döngüsüne devredecektir, yani her
dinleyici

12
01:00.850 --> 01:04.840
iş parçacığı veya zamanlayıcı kabilesi
hesaplamasını olay döngüsüne sıraya
koyacaktır.

13
01:05.500 --> 01:12.420
Ve sonra bu olay döngüsü, Scotty
yıldızının içine

14
01:12.430 --> 01:13.780
sıralanmış olan her bir hesaplama üzerinde
uçacaktır.

15
01:14.530 --> 01:18.460
Örneğin, ağdan bir B paketinin alındığını
varsayalım.

16
01:18.940 --> 01:22.810
Packet Listener Trust bu paketi soket
üzerinde dinliyor.

17
01:23.290 --> 01:23.710
Tamam.

18
01:24.100 --> 01:29.380
Şimdi, paket dinleyici iş parçacığı B
paketinin sokete alındığını tespit
ettiğinden, paket

19
01:29.380 --> 01:36.520
dinleyici iş parçacığı B paketiyle
birlikte işlev paketi sürecini de sıraya
koyacaktır.

20
01:38.970 --> 01:40.050
İşin içine.

21
01:40.650 --> 01:47.700
Böylece fonksiyon process'e geri döner ve
dysfunction'a argüman paket olur.

22
01:48.210 --> 01:54.210
Daha önce de söylediğim gibi, bu argümanla
birlikte bir fonksiyona hesaplama denir.

23
01:54.720 --> 01:59.940
Yani paket dinleyici iş parçacığı,
hesaplamayı ve olay döngüsünün görevini
sıraya koyacağız.

24
02:00.750 --> 02:02.730
Benzer şekilde, her dinleyici bunu denedi.

25
02:02.730 --> 02:09.630
Burada ilgili hesaplamayı olay için sıraya
koyacağımızı görebilirsiniz,

26
02:09.630 --> 02:10.140
bu kadar basit bir şekilde döngüye
sokuyoruz.

27
02:10.740 --> 02:17.700
Yani bu dinleyicilerin SGP sürecinin
mantığını doğrudan

28
02:17.700 --> 02:23.880
çalıştırarak hesaplama yapmayacakları,
bunun yerine kendi hesaplamalarını

29
02:23.880 --> 02:24.990
olay döngüsüne sıraya koyacakları anlamına
gelmektedir.

30
02:25.920 --> 02:32.040
Ve bu olay döngüsü daha sonra ex-staff'a
aktarılan her bir hesaplamayı
tetikleyecektir.

31
02:32.040 --> 02:33.060
Teker teker aldım.

32
02:34.260 --> 02:39.580
Yani başardıklarımız, yolda kaybedilmiş
zaman değil.

33
02:39.600 --> 02:44.940
Hesaplamayı olay döngülerine, görev
dizisine ve olay döngüsüne sıraya
koyacağız,

34
02:44.940 --> 02:47.390
ardından sıraya konan tüm hesaplamayı
ciddi bir şekilde çalıştırıp katlayacağız.

35
02:47.400 --> 02:48.900
Yani gerçekten teker teker kaçırıyorsunuz.

36
02:49.320 --> 02:55.860
Sonuç olarak, uygulama mantığı yalnızca
bir ve yalnızca bir

37
02:56.190 --> 02:58.140
iş parçacığı bağlamında yürütülür ve buna
bakılan olay denir.

38
02:59.100 --> 02:59.490
Tamam.

39
02:59.880 --> 03:04.050
Böylece olay döngüsünü uygulamanın ana
motoru olarak görselleştirebilirsiniz.

40
03:04.350 --> 03:09.450
Uygulamanın herhangi bir bölümünü yürütmek
olay döngüsü izinin sorumluluğundadır.

41
03:09.990 --> 03:14.070
Uygulama mantığı herhangi bir iş parçacığı
bağlamında yürütülmemelidir.

42
03:14.490 --> 03:17.580
Aksi takdirde, uygulamanız çok iş
parçacıklı olma eğiliminde olacaktır.

43
03:18.450 --> 03:23.610
Dolayısıyla, tercih ettiğimiz nihai sonuç,
dinleyicinin var olmaya çalıştığı, ancak
eşzamanlılığın olmadığıdır.

44
03:24.240 --> 03:24.660
Tamam.

45
03:25.230 --> 03:31.920
Bunun mantığı şimdi işlenmeli, hatta
bakılan ve sahip

46
03:31.920 --> 03:32.700
olunan tek bir iş parçacığı bağlamında
yürütülmelidir.

47
03:32.700 --> 03:38.850
Eşzamanlılık yoktur, ancak harici ilgiyi
dinlemeye devam eden dinleyici tuzakları
vardır.

48
03:39.540 --> 03:45.420
Süreç, okunan tek bir iş parçacığı
bağlamında çalıştırılmalıdır ve

49
03:45.420 --> 03:49.890
bu nedenle, süreç olarak tek iş parçacıklı
tasarımı sürdürebiliriz.

50
03:50.580 --> 03:57.240
SDP mantıksal olarak hala tek iş
parçacıklı bir süreç olduğundan, herhangi
bir kilitlemeye hala

51
03:57.240 --> 04:02.610
ihtiyacımız yoktur ve bu nedenle iş
parçacıkları arasında herhangi bir
kilitleme veya çekişme yoktur.

52
04:03.330 --> 04:09.470
Bu yüzden bir sonraki derste yapacağımız
şey, örnek bir uygulama kurmak olacak.

53
04:09.480 --> 04:13.170
Bir numunenin işlenmesi gerekiyor ve ben
de entegre edeceğim.

54
04:13.170 --> 04:16.950
Bu, şimdiye kadar yazdığımız olay döngüsü
kütüphanesi ile işlenmelidir.

55
04:17.400 --> 04:22.620
Daha sonra birkaç dinleyici iş parçacığı
yazacağım, örneğin paket dinleyici iş
parçacığı.

56
04:22.980 --> 04:24.780
Süreç iletişim ipliğimiz.

57
04:25.110 --> 04:33.300
Ardından, birden fazla dinleyici iş
parçacığının herhangi bir iş parçacığı
güvenliği olmadan kurulum

58
04:33.390 --> 04:39.090
sürecinin dahili veri yapılarına
erişmesine izin verilirse SDP sürecinizin
gerçekten çökebileceğini göstereceğim.

59
04:39.090 --> 04:40.320
Senkronizasyonumuz.

60
04:40.980 --> 04:46.320
Bu yüzden öncelikle size sorunun
gösterimini gösterecektim

61
04:46.320 --> 04:47.820
ve ardından devam edip çözümü
uygulayacağız.

62
04:48.720 --> 04:54.570
Her dinleyici iş parçacığının
hesaplamasını görev

63
04:54.600 --> 04:54.860
arkadaşına sıraya koyacağı şekilde
değişiklikler yapacağız.

64
04:55.200 --> 05:03.120
Ve sonunda SDP süreci adına tüm
hesaplamaları gerçekleştiren olay
döngüsüdür.

65
05:03.390 --> 05:08.970
Ve olay döngüsü kullandığımız için, SDP
mantıksal olarak tek iş parçacıklı bir
süreç haline gelecektir.

66
05:09.240 --> 05:15.630
SDP sürecinin dahili veri yapılarına iş
parçacığı güvensiz erişimi nedeniyle
herhangi bir sorunla karşılaşmanız

67
05:15.630 --> 05:22.530
söz konusu değildir, çünkü ilk etapta adım
süreci içinde eşzamanlı iş parçacıkları
yoktur.


