728x90
반응형
아마도 Socket이 timeout되서 그런것 아닐까요? Socket 프로그래밍을 직접해보지 않은터라. Java API에 보면 Socket Class가 있는데
Socket 연결 방법이 두가지가 있는데 연결시 timeout을 정하셨나요?
socket.connect(SocketAddress endpoint)
socket.connect(SocketAddress endpoint, int timeout)
두번째일경우 timeout이 지나면 연결이 해제될수 있어요. 첫번째 연결 방법을 사용하시거나 getSoTimeout()/setSoTimeout()을 사용해 timeout을 바꿔보세요. timeout을 0으로 정할시 무한 timeout이라네요. 또 getKeepAlive()와 setKeepAlive() 메소드가 있거든요.
getKeepAlive()로 KeepAlive가 적용 되있는지 확인해보시고 아닐 경우 setKeepAlive(true)로 set하시면 될듯.
하지만 위 두 방법을 쓰실경우 꼭 수동으로 Socket을 닫아주셔야할것입니다.
socket.close()
--
아니면 메세지를 보낼때마다 확인할수도 있고요.
if(!socket.isConnected())
socket.connect(...)
728x90
반응형
'JAVA > 함수' 카테고리의 다른 글
Java float , double -실수형(기본자료형) (0) | 2014.10.23 |
---|---|
[JAVA] javac 옵션, 자바 컴파일 (0) | 2014.10.16 |
java HashMap 에서 값 순서대로 꺼내기 (0) | 2014.08.21 |
Java List (진행중) (0) | 2014.08.19 |
[JAVA] indexOf () (0) | 2014.08.14 |
[JAVA] IndexOf 정확히 알고 쓰기 (0) | 2014.08.14 |
[Java]형변환 (0) | 2014.08.08 |
Spring MVC 컨트롤러에서 Parameter 받기 - @RequestParam예제 (0) | 2014.08.08 |