QTcpSocket, Server Tarafındaki Thread'i Kilitliyor ?



  • Merhaba Arkadaşlar,

    Kurumsal Kaynak Yönetim Yazılımı Hazırlıyorum.

    1. Kod 12000 satırı Geçtiğinden Kontrolde zorlanıyorum. Bazen neyin nerede olduğunu unutuyorum ekleme yada düzeltme yaparken çok zorlanıyorum. Büyük Projeler Yazarken nelere dikkat etmeli?

    2. Esas konum bu. Bütün veriler Server da toplanıyor. Client serverdan bir istekte bulunduğu zaman eğer server isteğe cevap verecek hazırlığını yaparken client yeni istekte bulunursa server'da thread kilitleniyor.

    şu şekilde çalışıyor. Client Servere Tek socketle bağlanıyor. Threadlerdeki davranışları ona bağlı clienttaki yetkileri atıyorum. threadleride socketdescriptor ile tanıyorum. 1 ve üstü mb dosya istediğimde, bir sayı dizisi gönderiyorum ve bu sayı dizisine sayılara göre işlem yapıyor. Komut+Dosya_Numarası -> Server Komutun ne olduğuna bakıyor ve sonra dosya numarasına bakıp o dosyayı o socket göndermeye hazırlanıyor. Herşey Normal, 100 Client Aynı anda çalıştırdım. 100 mb üzeri dosya transferi yaptım. ancak transfer sırasında Client da yeni istekleri engellemezsem serverdaki thread kilitleniyor.

    Sizce burda bir mantık hatası mı yaptım ta en baştan. ikinci bir socket mi tanımlamalıydım? nasıl bir yol izlemeliyim?

    Herkese teşekkürler.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.