WEBVTT

1
00:05.220 --> 00:10.710
Evet arkadaşlar, şimdi ön alma ve
zamanlama uygulamasına başlayalım.

2
00:10.800 --> 00:13.500
Bu yüzden eventloop dot h dosyasındayım.

3
00:13.500 --> 00:17.370
Ve bir enum tanımlayarak başlayacağım.

4
00:17.730 --> 00:22.050
Yani bu enum Eventloop continue ve event
loop finish diyor.

5
00:22.620 --> 00:24.810
Pekâlâ, bu ilk adım.

6
00:25.920 --> 00:32.340
İkinci adım, olay döngüsü geri arama
işlevinin prototipini, olay döngüsü

7
00:32.340 --> 00:37.440
geri arama işlevinin bu enumun değerini
döndürmesini sağlayacak şekilde
değiştireceğiz.

8
00:39.000 --> 00:39.360
Tamam.

9
00:39.360 --> 00:44.340
Yani event loop dot h başlık dosyasında
yapmamız gereken kod değişiklikleri
bunlar.

10
00:46.410 --> 00:53.580
Yani temel olarak söylemek istediğim şey,
olay döngüsü geri çağırma işlevinin bir
değer döndürmesi gerektiğidir.

11
00:54.090 --> 00:58.920
Şimdi demo app single threaded concurrency
dot c dosyasına gidin.

12
00:59.310 --> 01:05.160
Ve bu dosyada yükleme işlevi ve indirme
işlevi olan olay döngüsü geri arama
işlevini uyguladık.

13
01:05.610 --> 01:12.870
Şimdi bu fonksiyonun prototipi burada
değiştirdiğimiz prototipe uygun olmalıdır.

14
01:13.770 --> 01:16.170
Bu yüzden bu enumun değerini
döndürmelidirler.

15
01:16.740 --> 01:19.620
Aynı şey indirme işlevi için de geçerli.

16
01:21.690 --> 01:31.050
Şimdi geliştiricinin yapması gereken tek
şey, işin bu görev tarafından hala
tamamlanmadığını hissederse

17
01:31.470 --> 01:38.850
ve olay döngüsü iş parçacığının bu görevi
yeniden planlamasını isterse, o zaman tek

18
01:38.850 --> 01:43.920
yapması gereken L continue enum'u
döndürmektir ve bu iki satıra gerek
yoktur.

19
01:45.060 --> 01:51.810
Ve aksi takdirde, görev işini
tamamladıysa, yani yükleme %100 olduysa,
aynı

20
01:51.810 --> 01:59.910
kod değişikliklerinin indirme işleviyle de
yapılması gerektiğini basitçe geri
dönebilirsiniz.

21
02:04.100 --> 02:08.930
Yani bunlar, olay döngüsünü kullanan
uygulama tarafında yapmamız gereken kod
değişiklikleridir.

22
02:09.500 --> 02:12.770
Ve şimdi olay döngüsü nokta c dosyasına
geliyoruz.

23
02:16.710 --> 02:25.170
Olay döngüsü iş parçacığı işlevine
girmemiz ve bu işlevde olay

24
02:25.170 --> 02:27.660
döngüsü iş parçacığının geri arama
işlevini çağırdığı satıra gitmemiz
gerekir.

25
02:28.620 --> 02:29.250
Tamam.

26
02:29.520 --> 02:32.850
Bu yüzden önce bir değişken tanımlamamız
gerekiyor.

27
02:36.210 --> 02:37.410
Sonuç arandı.

28
02:38.010 --> 02:44.250
Ve bu geri arama fonksiyonu geri
döndüğünde, sonucun değerini
yakalayacağız.

29
02:44.730 --> 02:48.270
Ve şimdi olay döngüsü başlığı bunu
inceleyecek.

30
02:48.270 --> 02:49.650
Geri dönüş değeri nedir? Eğer geri dönüş
değeri event loop continue

31
02:51.420 --> 03:00.810
ise, o zaman tek yapmamız gereken aynı
görevi yeniden planlamaktır.

32
03:03.670 --> 03:04.420
Tamam.

33
03:04.420 --> 03:11.110
Aksi takdirde bu görevle işimiz biter,
dolayısıyla görevi serbest bırakırız.

34
03:11.530 --> 03:13.990
Yani yapmamız gereken kod değişiklikleri
bunlar.

35
03:13.990 --> 03:14.890
Hepsi bu kadar.

36
03:16.810 --> 03:21.100
Şimdi programımızı derleyelim ve
çalıştıralım.

37
03:24.120 --> 03:24.510
Tamam.

38
03:24.510 --> 03:28.860
Bu yüzden bu fonksiyonu kullanmadan önce
kopyalayıp yapıştırmamız gerekir.

39
03:29.700 --> 03:32.130
Bu yüzden bu fonksiyonu buraya koyacağım.

40
03:41.820 --> 03:45.690
Ve program daha önce nasıl çalışıyorsa
aynı şekilde çalışmalıdır.

41
03:46.680 --> 03:47.250
Tamam.

42
03:49.140 --> 03:52.410
Bu nedenle, artık resmi bir şekilde ön
alım uygulamasını hayata geçirdik.

43
03:53.220 --> 03:59.400
Yani yinelemek için geliştiricinin yapması
gereken tek şey l continue veya l finish
değerini döndürmektir.

44
03:59.640 --> 04:06.960
Bu nedenle geliştirici, olay döngüsü iş
parçacığının görevi

45
04:06.960 --> 04:08.070
tekrar planlamasını istiyorsa l continue
değerini döndürmelidir.

46
04:09.180 --> 04:14.700
Aksi takdirde, geliştirici olay döngüsü iş
parçacığının görevi sonlandırmasını
istiyorsa L finish döndürmelidir.

47
04:14.700 --> 04:15.750
Bu kadar.


