|
안녕하세요! 매직 입니다.
이부분은 서버 소스 일부분 입니다.
void __fastcall TsvTCP::IdTCPServerExecute(TIdPeerThread *AThread)
{
AnsiString asGet;
asGet = AThread->Connection->ReadLn("", 5000);
/*어쩌구 저쩌구 내용들*/
}
//---------------------------------------------------------------------------
궁금한 것은 클라이언트에서 종료 될때, 서버는 빌더로 실행했을 때입니다.
종료하면 아래 문장에서 한번 걸립니다. 그런 후에 서버를 실행하면 또 정상적으로
돌아 갑니다. 그냥 실행파일로 실행시키면 아무런 문제가 없는데요,
asGet = AThread->Connection->ReadLn("", 5000);
혹시 서버를 실행파일로 실행시켰더라도 클라이언트 에서 접속했다가 종료했다가 이런 동작을
여러군데에서 반복적으로 계속하면 혹시 문제를 일으키는 일이 없는지요?
이렇게 물어 보는 이유는 서버가 아무런 문제 없이 잘 돌아가다가 어떤 원인인지 모르지만
클라이언트에서 서버쪽으로 값을 보내지 못하는 현상이 발생합니다. 그래서 강제로
클라이언트를 죽이면 98같은 경우는 Blue 스크린이 뜨고, 98이상 OS에서는 메모리에러가
나옵니다.
답변좀 부탁드립니다.
감사합니다.
|