UZaktan Bağlantı Sorun ..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
s1lv3r
Üye
Mesajlar: 91
Kayıt: 09 Nis 2006 03:03

UZaktan Bağlantı Sorun ..

Mesaj gönderen s1lv3r »

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 :roll: :roll:
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

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.
s1lv3r
Üye
Mesajlar: 91
Kayıt: 09 Nis 2006 03:03

Mesaj gönderen s1lv3r »

Thread yaparsam reverse connectionu gerçekleştiremiyorum :cry: 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 :roll:
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Indy'nin AntiFreeze bileşeni bu kilitlenmeyi epey hafifletiyordu. Deneyebilirsin.
Kullanıcı avatarı
Murat DİCLE
Kıdemli Üye
Mesajlar: 702
Kayıt: 19 Nis 2006 04:12
Konum: İstanbul
İletişim:

Mesaj gönderen Murat DİCLE »

Merhabalar,

bilgisayar bir IP adresi alana kadar hiç bir soketi açma. beklet. ne zaman bir IP adresi geldi o zaman işlemlere başla.

Saygılar..
s1lv3r
Üye
Mesajlar: 91
Kayıt: 09 Nis 2006 03:03

Mesaj gönderen s1lv3r »

#muratdicle dediğnii deneyeceğim tşk ederim.
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Ben yazana kadar sorunu silmişsin.

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.
Cevapla