WEBVTT

1
00:05.300 --> 00:06.740
Çocuklar, tekrar hoş geldiniz.

2
00:06.740 --> 00:12.290
Şimdi bu kursun bir sonraki bölümü olan
zamanlayıcıların serileştirilmesine
geçiyoruz.

3
00:13.010 --> 00:19.250
Dolayısıyla asenkron programlama
dünyasında zamanlayıcılar, asenkron
programlama dünyasındaki

4
00:19.250 --> 00:21.350
en önemli ve kritik rollerden birini
oynar.

5
00:22.610 --> 00:26.300
Zamanlayıcılar, zamanlayıcı güdümlü
programlama yapmamızı sağlar.

6
00:26.300 --> 00:31.910
Örneğin, uygulamanızda veya programınızda,
gelecekte

7
00:31.910 --> 00:32.840
gerçekleştirilecek hesaplamayı zamanlamak
istiyorsunuz.

8
00:33.380 --> 00:33.860
Tamam.

9
00:33.860 --> 00:40.280
Örneğin, şu andan itibaren beş saniye
sonra

10
00:40.280 --> 00:40.880
sisteminizden bazı ağ paketleri göndermek
istiyorsunuz.

11
00:41.630 --> 00:42.110
Tamam.

12
00:42.110 --> 00:45.560
Yani gelecekte yapmanız gereken faaliyet
tek seferlik olabilir.

13
00:45.590 --> 00:50.660
Yani, bunu yalnızca bir kez yapmak veya
periyodik olarak yapmak istersiniz.

14
00:50.660 --> 00:55.890
Yani, her beş saniyede bir makinenizden ağ
paketleri göndermek istiyorsunuz.

15
00:55.910 --> 01:01.390
Bu nedenle zamanlayıcı kütüphanesinin
çeşitli projelerde kullanımı oldukça
yaygındır.

16
01:01.400 --> 01:05.940
Bu bölümde ilk olarak Posix zamanlayıcı
API'lerini öğreneceğiz.

17
01:05.940 --> 01:12.930
Bu, Unix tabanlı sistemde desteklenen API
kümesidir ve

18
01:12.930 --> 01:15.770
Posix API'lerini kullanarak
zamanlayıcıları nasıl uygulayacağımızı
öğreneceğiz.

19
01:15.780 --> 01:20.940
Yani kursun bu bölümünün yan faydası,

20
01:20.940 --> 01:22.070
zamanlayıcılarla nasıl çalışacağınızı da
öğrenecek olmanızdır.

21
01:22.080 --> 01:27.900
Eğer zamanlayıcılarla ilk kez
çalışacaksanız, bu zamanlayıcılarla nasıl
çalışacağınızı öğrenmek

22
01:27.900 --> 01:35.910
için bir fırsattır ve daha sonra STP
projemizi öğreneceğimiz

23
01:35.910 --> 01:41.730
zamanlayıcılarla entegre edeceğiz ve daha
sonra problem ifadesini
gerçekleştireceğiz.

24
01:41.910 --> 01:49.620
Zamanlayıcıların STP projemizde istenmeyen
eşzamanlılığı, istemediğimiz

25
01:49.620 --> 01:50.940
eşzamanlılığı nasıl ortaya çıkardığını
analiz edeceğiz.

26
01:51.510 --> 01:58.470
Pekala, zamanlayıcılar doğası gereği
eşzamanlılığı beraberinde getirir ve

27
01:58.470 --> 02:04.260
uygulamanızı tek iş parçacıklı ve kilitsiz
tutmak istiyorsanız,

28
02:04.260 --> 02:05.130
zamanlayıcıların getirdiği bu istenmeyen
eşzamanlılıkla başa çıkmanız gerekir.

29
02:05.700 --> 02:07.800
Bu yüzden çözümü tartışacağız.

30
02:07.800 --> 02:14.880
Zamanlayıcılar tarafından ortaya çıkarılan
istenmeyen eşzamanlılıkla başa çıkmak

31
02:14.880 --> 02:18.150
için geliştirdiğimiz olay döngüsü
kütüphanemizi bu şekilde kullanacağız.

32
02:18.600 --> 02:19.170
Tamam.

33
02:19.170 --> 02:26.340
STP projemiz zamanlayıcıları desteklese
bile, olay döngüsü kütüphanesi yardımıyla
STP sürecimizin

34
02:26.340 --> 02:32.760
mantıksal olarak tek iş parçacıklı
kalacağını ve dolayısıyla
kilitlenmeyeceğini göreceğiz.

35
02:34.230 --> 02:40.500
Ve Unix platformunda desteklenen başka bir
zamanlayıcı

36
02:40.500 --> 02:41.790
kütüphanesine zaten aşina iseniz, onu
kullanmaktan çekinmeyin.

37
02:41.820 --> 02:47.820
Kısa bir süre sonra tanıtılacak olan
zamanlayıcı kütüphanesini kullanmak
zorunda olmanız gibi bir kısıtlama yoktur.

38
02:47.850 --> 02:52.080
Zaten aşina olduğunuz herhangi bir
zamanlayıcı kütüphanesini
kullanabilirsiniz.

39
02:53.550 --> 02:58.500
Bu yüzden bir sonraki ders videosunda,

40
02:58.500 --> 02:59.430
kullanacağımız zamanlayıcı kütüphanesine
aşina olalım.

41
02:59.610 --> 03:05.910
Sadece projemizde kullanacağımız Timer
kütüphanesi

42
03:05.910 --> 03:07.500
tarafından sağlanan arayüz API'lerini
tartışacağız.

43
03:07.500 --> 03:14.010
Kursun bu bölümünde zamanlayıcıların iç

44
03:14.010 --> 03:14.700
detaylarını veya uygulamalarını
tartışmayacağız.

45
03:14.730 --> 03:17.070
Bu kursun kapsamı dışındadır.

46
03:17.100 --> 03:23.370
Kendimizi sadece zamanlayıcı oluşturmayı,
zamanlayıcıyı silmeyi, zamanlayıcıyı nasıl
yeniden planlayacağımızı

47
03:23.400 --> 03:28.680
ve zamanlayıcılara dayanan işimizi nasıl
yapacağımızı bileceğimiz noktaya kadar
kısıtlayacağız.

48
03:28.680 --> 03:34.590
Ancak zamanlayıcının herhangi bir iç
detayını veya uygulamasını
tartışmayacağız.


