Arkadaşlar bir proje geliştiiriyorum ve server ile clienti reverse connection olarak birbirine bağlamam gerekiyordu bunu yaptım. Formumda bir tane ClientSocket ve ServerSocket var. Normal ip verince herşey normal bağlanıyor ve istediğimi gerçekleştirebiliyorum fakat program gereği ipnin sabit olması gerekiyor bu yüzden no-ip veya dyndnsden aldığım ip ile denediğimde cliente bağlanması sırasında yaklaşık 30-40 saniye bir donma (kilitlenme) yaşanıyor. Bunu nasıl aşabilirim
no-ip veya dyndns'den yapılan alan adı çözümlemesinde sorgular biraz gecikiyor. Nedeni de bu olmalı. Socket işlemlerini thread içinde yaparsan kilitlenme yaşamayacaksın.
Thread yaparsam reverse connectionu gerçekleştiremiyorum Peki bu gecikme sırasında programım kilitlenmesini nasıl engellerim yada engelleyebilir miyim ? Yani ip yine geç bağlansın ama program kilitlenmesin
Indy bileşenleri Delphi 7 ile birlikte geliyor. Sonraki Delphi sürümlerinde de mevcut. Eğer sende yok ise http://www.atozed.com/indy/ adresinden indirebilirsin. Açık kaynak kodlu bir bileşen setidir. Aslında socket işlemlerinde Indy kullanmanı tavsiye ederim. Dahili thread desteği ile blocked socket'ler kullanarak oldukça rahat edersin.