WEBVTT

1
00:06.310 --> 00:12.550
Bir önceki ders videosunda olay döngüsü
veri yapılarının bildiriminden
bahsetmiştik.

2
00:13.090 --> 00:13.450
Tamam.

3
00:13.870 --> 00:18.820
Şimdi yaptığımız bu derste, bir yapı
oluşturmak için

4
00:18.820 --> 00:20.830
bile belirli işlemleri gerçekleştirecek
API'lerin uygulanmasına başlayacaktık.

5
00:21.430 --> 00:24.820
Başlangıç olarak, ilk önce bu iki API'yi
uygulayacaktık.

6
00:25.240 --> 00:29.140
İlk API başlatma ile ilgilidir, ancak bir
yapıda bile yağlanmıştır.

7
00:29.440 --> 00:35.470
İkinci API ise çatallama veya eşit döngü
yolu oluşturma ile ilgilidir.

8
00:36.640 --> 00:42.730
Yani yapacağım şey, her şeyden önce,
takılı bile olsa dosyada olduğumu
görebilirsiniz.

9
00:43.900 --> 00:56.440
Ve sadece kolaylık sağlamak için, bazı
veri tipi takma adları

10
00:56.440 --> 00:58.480
oluşturmama izin verin, struct task,
Tasker alt çizgi D

11
01:01.630 --> 01:05.140
olarak adlandırılacak ve hatta döngü veri
yapısı olarak adlandırılacaktır.

12
01:07.440 --> 01:08.490
Luke T. bile.

13
01:12.090 --> 01:19.200
Yani bunu sadece rahatlık yaratmak için
yaptım ve bunlar hala

14
01:19.410 --> 01:20.280
bu yeni yapı tipleri ve başka bir şey
değil.

15
01:21.990 --> 01:29.760
Şimdi, dediğim gibi, bu iki API'nin
bildirimini yüksek profilli olayımızda
tanımlamamız gerekiyor.

16
01:31.260 --> 01:35.250
Bu yüzden bu iki API'nin prototipini veya
bozulmasını tanımlamama izin verin.

17
01:40.960 --> 01:45.760
Ve görmemek için dosya olayında bu iki
API'nin uygulanmasını sağlayacağım.

18
01:46.150 --> 01:48.280
Yeni bir süre mi yaratacağız? Dizinde,
Ussing programlama ve

19
01:52.420 --> 01:58.960
hatta fiyaskoyla sonuçlandı diyelim,
anladınız mı? Ve bazı standart

20
02:00.590 --> 02:05.000
başlıklar eklememe izin verin çünkü onlara
ihtiyacımız olacak.

21
02:05.690 --> 02:13.340
Ve son olarak, eklemek için baktığınız
dosyayı eklemeniz

22
02:13.380 --> 02:14.420
ve eklemeye çalıştığınız dosyayı eklemeyi
unutmamanız gerekir.

23
02:15.200 --> 02:15.620
Tamam.

24
02:16.490 --> 02:18.860
Şimdi API'lerin uygulanmasına başlayalım.

25
02:19.550 --> 02:21.830
Yani ilk API'nin içinde bir döngü bile
vardı.

26
02:27.810 --> 02:30.030
İkinci API sonunda istila edildi.

27
02:35.520 --> 02:42.090
Bu yüzden API'deki döngü bile olay döngüsü
veri yapısının tüm üyelerini başlatır.

28
02:42.840 --> 02:45.930
Yani sol tarafta, bir süre zor olan
döngüyü bile görebilirsiniz.

29
02:45.930 --> 02:51.570
Ve sağ tarafta, dosya görüntüsü döngüsünde
API'deki

30
02:51.570 --> 02:52.980
bir döngünün bile uygulanmasını
sağlayacağım, görmüyorum.

31
02:55.260 --> 02:58.590
Bu yüzden ilk üye, mutekse sahip olup

32
03:02.670 --> 03:04.440
olmadığını ya da olması gerekip
gerekmediğini soracaktı.

33
03:11.620 --> 03:13.720
İkinci aşama öğesini başlatın,

34
03:16.810 --> 03:18.730
ardından koşul oranını başlatın.

35
03:24.490 --> 03:27.220
Ve son olarak, mevcut ABD şimdi olarak
başlatılacaktır.

36
03:27.730 --> 03:28.330
Bu kadar.

37
03:32.020 --> 03:37.030
Daha sonra ikinci API'nin uygulanmasına
gelecek olursak, bu API

38
03:37.030 --> 03:38.920
etrafındaki olay döngüsünün amacı bir olay
döngüsü tehdidi oluşturmaktır.

39
03:39.670 --> 03:40.090
Tamam.

40
03:41.440 --> 03:46.210
Bu yüzden sizden şunu bekliyorum,
bilirsiniz, siyasette ve çevrede çoklu iş
parçacıklı programlama.

41
03:46.690 --> 03:51.850
Yani burada yapmamız gereken tek şey yeni
bir iş parçacığı oluşturmaktır.

42
04:08.790 --> 04:12.570
Bu yüzden olay döngüsü tehdidini müstakil
modda başlatacaktık.

43
04:13.770 --> 04:20.790
Dolayısıyla, test modunda denemeye
başladığınızda, bu iş parçacığı bir arka
plan iş

44
04:20.790 --> 04:28.290
parçacığı haline gelir ve bu üçlünün başka
herhangi bir üçlüye katılması

45
04:28.290 --> 04:29.130
gerekmez ve başka herhangi bir tehdide
katılmadan sadece hakim olmayı seçebilir.

46
04:30.420 --> 04:30.900
Tamam.

47
04:31.050 --> 04:39.630
Umarım her iki eğitim API'sinin
temellerini anlamışsınızdır ve ayrıca test
modunda bir

48
04:39.630 --> 04:45.360
iş parçacığı oluşturmak olan bu özel adım
isteğe bağlı farklı bir

49
04:45.360 --> 04:47.490
Lubrano yapısıdır, bu iş parçacığını Yeni
Ahit'te oluşturmasanız bile iyi
çalışacaktır.

50
04:48.360 --> 04:52.680
Ve son olarak, bir boncuk ipliği ya da
yeni bir tehdit oluşturacaktım.

51
05:00.860 --> 05:01.820
Ve işimiz bitti.

52
05:02.360 --> 05:07.520
Yani bu olay, küçük Ted, bu yeni tehdit
bağlamında çağrılacak bir işlevdir.

53
05:10.670 --> 05:12.260
Yani bu bir tehdit işlevi değildir.

54
05:20.520 --> 05:27.060
Ve bu üçlü fonksiyona bazı sahte kodlar

55
05:27.060 --> 05:27.540
ekleyelim, böylece bir tehdidin başarıyla
başlatıldığını bilelim.

56
05:37.440 --> 05:41.540
Bu uykuda uyku ifadesini kullanmayı
unutmayın,

57
05:41.550 --> 05:42.180
dahil etmeniz gerekirdi, sizden
arşivlememenizi istedim.

58
05:49.420 --> 05:50.380
Ve işimiz bitti.

59
05:51.970 --> 05:58.800
Bu yüzden geri döneceğiz ve bu fonksiyon
çağrısını daha da

60
05:58.810 --> 06:02.740
geliştireceğiz çünkü bu fonksiyon içinde
birazcık yapı mekanizması bile
uygulanacak.

61
06:08.930 --> 06:10.460
Bazı yazım hataları var.

62
06:11.720 --> 06:12.020
Evet.

63
06:13.490 --> 06:17.960
Peki bu API olay döngüsü çalışmasını ve
hatta döngüsünü kim çağıracak?

64
06:18.500 --> 06:23.720
Bu API'ler, yapıda kulüp bile kullanmak
isteyen uygulama tarafından çağrılacaktır.

65
06:24.200 --> 06:26.240
Yani yeni bir dosya mı oluşturacağım? Ve

66
06:29.680 --> 06:32.530
diyelim ki bu demo kaçırma, anladın mı?

67
06:34.150 --> 06:38.050
Pekala, ve bazı standart yüksek profiller
ekleyelim.

68
06:47.620 --> 06:52.720
Yani bu demo, Abhazya olay görünümü
kütüphanemizi kullanacak olan uygulamayı
temsil ediyor.

69
07:06.080 --> 07:12.470
Böylece uygulamamız olay döngüsünü
başlatacak ve uygulamamız olay döngüsü
trendini çalıştıracaktır.

70
07:14.600 --> 07:14.990
Tamam.

71
07:15.890 --> 07:19.850
Ve ana fonksiyonumuzun çıkmasını
engelleyelim.

72
07:21.110 --> 07:31.250
Bunun için, ana işlevinizin baskın
olmaması için buraya bir tür komut
yerleştirebilirsiniz.

73
07:32.120 --> 07:38.300
Aksi takdirde, ana iş parçacığımız
tarafından oluşturulan olay döngüsü iş
parçacığı da sonlandırılacaktır.

74
07:38.870 --> 07:43.370
Ana tehdit baskın çıkarsa, ana iş
parçacığı tarafından oluşturulan

75
07:43.370 --> 07:45.080
tüm deneme iş parçacıklarının da
sonlandırılacağını zaten biliyoruz.

76
07:45.090 --> 07:46.520
Bu yüzden bunu yapmak istemiyoruz.

77
07:48.290 --> 07:52.090
Şimdi programımızı derleyelim.

78
07:52.100 --> 07:58.250
Yani bu noktada, Event Loop, Dot ve
Damodar'ı derlenecek kaynak dosya olarak
göreceğiz.

79
07:59.600 --> 08:01.550
Bu yüzden dosyayı derlerdim.

80
08:01.550 --> 08:08.960
Öncelikle Blue Dot C'yi tamamlayacağım ve
ardından dosya demo uygulamasını
derleyeceğim.

81
08:08.960 --> 08:09.740
Görmedim.

82
08:12.220 --> 08:15.130
Ve son olarak, bir çalıştırılabilir dosya
oluşturacaktım.

83
08:20.440 --> 08:26.080
Ve çalıştırılabilir dosyanızı eksi LP iş
parçacığı kullanarak Peter Hart
Kütüphanesi ile bağlamanız gerekir.

84
08:27.070 --> 08:32.320
Ve burada bir çalıştırılabilir dosya
oluşturuyoruz ve çalıştırılabilir

85
08:32.320 --> 08:33.410
dosyayı tetiklediğimde, olay döngüsü
üçlememizin çalıştığını görebilirsiniz.

86
08:34.780 --> 08:35.200
Tamam.

87
08:35.570 --> 08:41.590
Ah, Lou'nun bile sonsuz bir döngü
yürütmesi gerekiyor ve

88
08:41.590 --> 08:43.930
şu anda ana uygulamamız bu 13 numaralı
satıra sahip.

89
08:45.490 --> 08:45.880
Tamam.

90
08:46.270 --> 08:51.640
Böylece, olay döngüsü kütüphanemizi
kullanan bir

91
08:51.640 --> 08:52.240
uygulamamızın olduğu bir ortam kurduk.

92
08:52.930 --> 08:57.580
Ve şimdi yapacağımız bir sonraki derste,

93
08:57.580 --> 08:58.840
olay döngüsü kütüphanemizin ortalama
mekanizmasını uygulayacağız.


