2011-04-09 8 views
3

Socket과 ServerSocket을 사용하여 Java 클라이언트/서버 프로그램을 작성하고 있습니다. 여러 클라이언트가 동시에 서버에 연결합니다. 클라이언트 연결이 서버 측에서 연결 해제되었는지 확인하는 가장 좋은 방법은 무엇입니까? 지금 당장은 연결이 끊어진 클라이언트에 쓰려고 할 때 SocketException이 발생합니다.Java : 서버 측에서 클라이언트 연결이 끊어졌습니다.

+0

이 질문은 도움이 될 것입니다. : http://stackoverflow.com/questions/698964/checking-if-a-clientsocket-has-disconnected-in-java-hangs –

답변

1

단절을 감지하는 가장 좋은 방법은 데이터가 없을 때 다른 쪽 끝에서 하트 비트를 보내고 판독기가 시간 초과되도록하는 것입니다.

+0

그냥 명확히하기 위해 누가 하트 비트를 보낼 것입니까? 서버 또는 클라이언트? – garsh0p

+1

작성자가 하트 비트를 보내면 독자가 예상합니다. 어떤 쪽이 클라이언트 또는 서버인지는 중요하지 않습니다. –

관련 문제