WEBVTT

1
00:05.590 --> 00:11.800
Evet arkadaşlar, şimdi listemizin zorunlu
olmayan,

2
00:11.890 --> 00:12.590
yürütülebilir veya ordu uygulamasının
uygulanmasıyla başlayalım.

3
00:13.000 --> 00:16.630
Dolayısıyla, anında dinleyicinin
göremeyebileceği zamanı görebilirsiniz,
değil mi? Yapmamız gereken

4
00:17.170 --> 00:23.980
ilk şey, gerçekten küçük iş parçacıklarını
temsil eden iki iş

5
00:23.980 --> 00:25.600
parçacığı tutacağı oluşturmaktır, değil
mi? Bu yüzden burada kapalı işaretçi

6
00:26.800 --> 00:33.340
tipinde olan ve dinleyici iş
parçacıklarını temsil eden iki değişken

7
00:33.340 --> 00:35.200
alıyorum, dinleyici bir ve dinleyici iki,
değil mi? Şimdi, uygulamalarım

8
00:36.550 --> 00:41.950
başlar başlamaz, üç bin bir numaralı
bağlantı noktasını dinleyen

9
00:41.950 --> 00:43.480
bir numaralı bir dinleyici iş parçacığı
oluşturmama izin verin.

10
00:43.870 --> 00:44.260
Tamam mı? Bunun için yapacağım şey API,

11
00:44.830 --> 00:52.300
UDP Sarwar oluşturmak ve başlatmak olacak.

12
00:52.780 --> 00:59.380
Daha önce de belirttiğim gibi, bu API'nin
ilk argümanı IP

13
00:59.380 --> 01:02.680
adresi olmalıdır ve bizim durumumuzda bu
adres her zaman 127.0.0.1'dir.

14
01:03.100 --> 01:09.370
İkinci argüman destek numarasıdır ve
üçüncü argüman

15
01:09.370 --> 01:10.750
paket alma fonksiyonuna bir bat
işaretçisidir, değil

16
01:12.140 --> 01:17.690
mi? Bu API, dediğim gibi, 3000

17
01:17.690 --> 01:19.400
numaralı noktada dinleyeceğimiz
dinlenemeyen üçlü oluşturacaktı.

18
01:19.790 --> 01:23.150
Ve bu API iş parçacığına bir işaretçi
döndürür, değil mi?

19
01:24.940 --> 01:31.930
Tam olarak aynı satırlarda, ikinci bir
dinleyici iş parçacığı oluşturabilirsiniz,

20
01:31.930 --> 01:37.180
bu yüzden üç bin bir numaralı panoyu
dinleyeceğimiz ikinci bir

21
01:37.780 --> 01:39.340
dinleyici iş parçacığı oluşturduğumu
görebilirsiniz, değil mi? Ve işim bitti.

22
01:40.390 --> 01:43.060
Böylece uygulamam iki dinleyici iş
parçacığı oluşturdu.

23
01:44.820 --> 01:49.830
Şimdi, bu paket alma fonksiyonunun ne
olduğunu tartışalım, yani

24
01:49.830 --> 01:55.980
bu fonksiyon uygulamaya ait olan
fonksiyondur ve paket dinleyici

25
01:55.980 --> 01:56.650
iş parçacıkları paketi bildirmek için bu
fonksiyonu kullanmalıdır.

26
01:57.030 --> 02:01.380
Dinleyici tehditleri ağdan uygulamaya
ulaştı, değil mi? Yani

27
02:02.550 --> 02:05.910
bu paket alındı fonksiyonunun bir
uygulamasına sahip olmalıyız.

28
02:06.390 --> 02:08.430
Öyleyse bu işlevi uygulamama izin verin.

29
02:08.790 --> 02:11.490
Bu işlevde karmaşık hiçbir şey
yapmayacağım.

30
02:11.490 --> 02:18.300
Basitçe, bazı mesajlar yazdıracağım,
örneğin, burada

31
02:18.300 --> 02:19.590
alınan paketi paketin boyutunda
yazdırıyorum.

32
02:19.920 --> 02:20.280
Doğru.

33
02:20.760 --> 02:26.670
Burada karmaşık bir mantık uygulamak
zorunda değilsiniz çünkü ben sadece

34
02:26.880 --> 02:31.800
dinleyici iş parçacıklarının paketi
işlenmek üzere ana uygulamaya nasıl
iletebileceğini

35
02:32.550 --> 02:38.520
göstermek istiyorum, değil mi? Yani bu
fonksiyon, paketin işlenmek üzere

36
02:38.670 --> 02:39.030
ana uygulamanız tarafından alındığını
temsil ediyor, değil mi? Yani

37
02:39.780 --> 02:43.680
çocuklar, tüm sihrin UDP olan bu
fonksiyonda yattığını görebilirsiniz.

38
02:43.680 --> 02:45.030
Öyleyse yaratın ve başlayın.

39
02:45.450 --> 02:50.460
Şimdi, bu fonksiyonu anlamak için çok

40
02:50.460 --> 02:51.960
temel UDP programlamasına aşina olmanız
gerekir.

41
02:52.530 --> 02:57.360
Bu yüzden bu işlevin uygulanmasını
tartışacaktım, ancak bu işlevin
uygulanmasını

42
02:57.360 --> 03:04.080
hızlı bir şekilde tartışacağım çünkü biraz
soket programlama bildiğinizi ve

43
03:04.080 --> 03:09.030
temel bir UDP yazılım programı yazabilecek
durumda olduğunuzu varsayıyorum.

44
03:09.330 --> 03:09.660
Değil mi? Ve elbette, bir şey daha var ki,

45
03:10.580 --> 03:16.760
programınız tehdit çıkışını kullanarak
hakim olmalıdır, dediğim gibi, ana

46
03:16.760 --> 03:23.510
tehdidinizi BitTorrent çıkışını kullanarak
sonlandırdığınızda, yalnızca veya ana
tehdit

47
03:23.510 --> 03:26.870
sonlanırken, uygulamanız tarafından
oluşturulan diğer parçalar çalışmaya devam
eder.

48
03:27.260 --> 03:27.620
Doğru.

49
03:28.730 --> 03:32.540
Artık bu programı derleyebilecek ve
çalıştırabilecek bir konumdasınız.

50
03:32.960 --> 03:37.250
Böylece programınız üç bin ve üç bin bir
numaralı bağlantı noktasını dinleyecektir.

51
03:37.610 --> 03:44.620
Ve uygulamanızı test etmek için
çalıştırılamaz UDP göndericisini
kullanabilirsiniz, değil mi?


