Evet arkadaşlar, şimdi listemizin zorunlu olmayan,
yürütülebilir veya ordu uygulamasının uygulanmasıyla başlayalım.
Dolayısıyla, anında dinleyicinin göremeyebileceği zamanı görebilirsiniz, değil mi? Yapmamız gereken
ilk şey, gerçekten küçük iş parçacıklarını temsil eden iki iş
parçacığı tutacağı oluşturmaktır, değil mi? Bu yüzden burada kapalı işaretçi
tipinde olan ve dinleyici iş parçacıklarını temsil eden iki değişken
alıyorum, dinleyici bir ve dinleyici iki, değil mi? Şimdi, uygulamalarım
başlar başlamaz, üç bin bir numaralı bağlantı noktasını dinleyen
bir numaralı bir dinleyici iş parçacığı oluşturmama izin verin.
Tamam mı? Bunun için yapacağım şey API,
UDP Sarwar oluşturmak ve başlatmak olacak.
Daha önce de belirttiğim gibi, bu API'nin ilk argümanı IP
adresi olmalıdır ve bizim durumumuzda bu adres her zaman 127.0.0.1'dir.
İkinci argüman destek numarasıdır ve üçüncü argüman
paket alma fonksiyonuna bir bat işaretçisidir, değil
mi? Bu API, dediğim gibi, 3000
numaralı noktada dinleyeceğimiz dinlenemeyen üçlü oluşturacaktı.
Ve bu API iş parçacığına bir işaretçi döndürür, değil mi?
Tam olarak aynı satırlarda, ikinci bir dinleyici iş parçacığı oluşturabilirsiniz,
bu yüzden üç bin bir numaralı panoyu dinleyeceğimiz ikinci bir
dinleyici iş parçacığı oluşturduğumu görebilirsiniz, değil mi? Ve işim bitti.
Böylece uygulamam iki dinleyici iş parçacığı oluşturdu.
Şimdi, bu paket alma fonksiyonunun ne olduğunu tartışalım, yani
bu fonksiyon uygulamaya ait olan fonksiyondur ve paket dinleyici
iş parçacıkları paketi bildirmek için bu fonksiyonu kullanmalıdır.
Dinleyici tehditleri ağdan uygulamaya ulaştı, değil mi? Yani
bu paket alındı fonksiyonunun bir uygulamasına sahip olmalıyız.
Öyleyse bu işlevi uygulamama izin verin.
Bu işlevde karmaşık hiçbir şey yapmayacağım.
Basitçe, bazı mesajlar yazdıracağım, örneğin, burada
alınan paketi paketin boyutunda yazdırıyorum.
Doğru.
Burada karmaşık bir mantık uygulamak zorunda değilsiniz çünkü ben sadece
dinleyici iş parçacıklarının paketi işlenmek üzere ana uygulamaya nasıl iletebileceğini
göstermek istiyorum, değil mi? Yani bu fonksiyon, paketin işlenmek üzere
ana uygulamanız tarafından alındığını temsil ediyor, değil mi? Yani
çocuklar, tüm sihrin UDP olan bu fonksiyonda yattığını görebilirsiniz.
Öyleyse yaratın ve başlayın.
Şimdi, bu fonksiyonu anlamak için çok
temel UDP programlamasına aşina olmanız gerekir.
Bu yüzden bu işlevin uygulanmasını tartışacaktım, ancak bu işlevin uygulanmasını
hızlı bir şekilde tartışacağım çünkü biraz soket programlama bildiğinizi ve
temel bir UDP yazılım programı yazabilecek durumda olduğunuzu varsayıyorum.
Değil mi? Ve elbette, bir şey daha var ki,
programınız tehdit çıkışını kullanarak hakim olmalıdır, dediğim gibi, ana
tehdidinizi BitTorrent çıkışını kullanarak sonlandırdığınızda, yalnızca veya ana tehdit
sonlanırken, uygulamanız tarafından oluşturulan diğer parçalar çalışmaya devam eder.
Doğru.
Artık bu programı derleyebilecek ve çalıştırabilecek bir konumdasınız.
Böylece programınız üç bin ve üç bin bir numaralı bağlantı noktasını dinleyecektir.
Ve uygulamanızı test etmek için çalıştırılamaz UDP göndericisini kullanabilirsiniz, değil mi?