Q&A

  • [질문...사용자들을 실시간으로 체크 할려면??]
안녕들 하세엽..



다름 아니구여...사용자의 IP를 가지고 있는데여...

이 사용자들이 on-line 인지 off-line인지..실시간으로 계속 체크를 해야 되는데...



전 쓰레드를 하나 만들어서 이 쓰레드가 10초마다 계속 실행 됩니다.

그리고 쓰레드 안에서 Indy UDP로 상대방 IP 를 갖고 통신을 보내봅니다.



응답이 있는 넘은 아직 살아 있는 사용자 이고...응답이 없으면 네트웍 끊김으로

간주 할려고 하는데여..델파이에 소스 올리고 실행 해서 체크 하면...상대방이 끊

기면 소켓 에러 나잖아여...여기까지는 당연 한 건데...



어째 실행파일에서 쓰레드가 상대방을 체크 할려고 IP를 갖고 들어 가면...알 수 없

는 소프트웨어 에러가 납니다.



제가 사용한 코드는 다음과 같습니다.



//////////////////////////////////////

Threads 안....



while true do

begin

for i := 0 to 4 do

begin

if IP가 있다면 then

begin

UDPClient2.Host := 친구 IP;

UDPClient2.Port := 8085;

UDPClient2.ReceiveTimeout := 5000;

strMsg := 'IA'+ '|';

UDPClient2.Send(strMsg); //sending

flag := UDPClient2.ReceiveString(); //receive





if flag = '' then

begin

showmessage('죽은넘');

// 메모리 갱신...

// 서버에 알림...죽었다구..



break;

end

else begin

showmessage('살은넘');

continue;

end;

end;



end; // 친구 4명..

sleep (10000);

end;



이렇게 했습니다.

보시고..고수님들은...실시간으로 사용자들의 체크를 하는 방법이 이것 말고...

좋은 방법..조언 부탁 드립니다.



수거여~~





0  COMMENTS