|
서버soket과 접속이 될때까지 계속 체크하는 프로그램을 짜고있습니다.
서버soket쪽과 연결이 안되면 계속 ClientSocketPC[i]->Active = true; 를 하고있는데 한 5분 쯤 지나면 에러가 파바바박 계속 뜨네요
ClientSocket 으로 짠 프로그램에서 1초 간격으로
9개의 ServerSocket 으로 짠 프로그램이 있는 각각의 PC 에게 접속을 요청해서 그 IP에 컴이 살이 있는지 죽었는지를 체크하는
프로그램을 작업 중 입니다
ClientSocket 으로 짠 프로그램에서 Timer 를 1초 간격을 주어
===============================================================================================
for (int i = 0; i < PCCnt; ++i){
ClientSocketPC[i] = static_cast<TClientSocket *>(FindComponent("ClientSocketPC" + IntToStr(i + 1)));
.
.
.
.
void __fastcall TDataModuleComm::PCCheckTimerTimer(TObject *Sender)
{
for (int i = 0; i < 9t; ++i){
if (IPAdd[i]!="") ClientSocketPC[i]->Host = IPAdd[i];
if (ClientSocketPC[i]->Host != "" && ClientSocketPC[i]->Socket->Connected == false)
ClientSocketPC[i]->Active = true;
}
}
===============================================================================================
위와 같이 timer 를 사용하여 1초 간격으로 연결이 안된 컴퓨터에는 계속 ClientSocketPC[i]->Active = true;
를 하였습니다.
컴퓨터가 살아서 Connected 된곳은 문제가 없는데 serversocket과 연결이 안된 컴퓨터 때문에 프로그램 실행후
5분가량되면 에러가 뜨네요..
방법이 없을까요?
|