idTCPServer Client Bağlantı Kopması

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Nemesis2005
Üye
Mesajlar: 136
Kayıt: 18 Oca 2005 05:24
Konum: İzmir

idTCPServer Client Bağlantı Kopması

Mesaj gönderen Nemesis2005 »

Merhaba idTCPServer Tarafında online kullanıcıları bir tabloya kaydediyorum. Connect olayında tabloya ekliyorum Disconnect olayındada tablodan siliyorum

Problemim Client tarafında internet kesildi, Network kablosu çıktı .. vs. vs. gibi durumlarda server tarafında Disconnect olayı gerçekleşmiyor ve bağlantı tabloda kaldığı için hala bağlıymış gibi görünüyor. Tabi Bu bağlantıyla ilgili Thread' ta asılı kalıyor.... Bunu nasıl denetleyebilirim..
Her iyinin içinde bir Kötülük.Her Kötnün içide de bir iyilik vardır
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: idTCPServer Client Bağlantı Kopması

Mesaj gönderen G.Arkas »

Server Cliente belirli aralıklarla ping atsın o ozaman.

Kod: Tümünü seç

if not ping('xxx.xxx.xx.xx') then
socket.disconnect;
Resim
Nemesis2005
Üye
Mesajlar: 136
Kayıt: 18 Oca 2005 05:24
Konum: İzmir

Re: idTCPServer Client Bağlantı Kopması

Mesaj gönderen Nemesis2005 »

Şöyle bir şey tasarlamaya karar verdim. Client tarafında bir dinleme olayı tasarlamadığım ve kontrolü zor olacağından işi Sadece Serverde çözmek yerine Client 1 dk aralıklarla Mesaj Gönderecek Server tarafında da TIdServerContext Class 'ına Timer özeliği ekledim 3dk süre belirleyip Thread yaratıldığı anda başlayıp Clienttan her mesaj aldığında baştan başlayıp 3 dk tamamlamaya çalışacak. Client tan bu 3dk içinde cevap gelmez ise Connection sonlandırılacak ve tabiki online listesindende düşecek şekilde yapacağım. Cevap için teşekkürler.
Her iyinin içinde bir Kötülük.Her Kötnün içide de bir iyilik vardır
Cevapla