|
서버에서 접속을 끊어도 OnDisconnect에서 이벤트가 발생합니다. 만약 클라이언트에서 종료시킨것과 차별화를 두고 싶으실 때는, 클라이언트에서 종료메시지를 주기 전에 TRING_DISCONNECT = true; 이런식으로 플래그를 주신다음, OnDisconnect에서 TRING_DISCONNECT 의 여부를 비교한다면, 처리할 수 있을것 같네요.
접속이 단절된 상황과 서버측에서 안전하게 끊은 것을 구별하시려면, 반대로 서버에서 종료메세지를 날려줘, 클라이언트에서 종료메시지를 받으면 연결을 종료시키는 방법을 택하시면 됩니다.
C++ Builder 에 있는 기본적인 TClientSocket 기준이지만, 이런 방법은 어떤 소켓 방식에도 적용시킬 수 있습니다.
소켓 님이 쓰신 글 :
: 서버에서 접속을 끊으면 클라이언트에서 그것을 이벤트로 잡고 싶은데 잘 안되네요
:
: 방법이 없나요?
|