본문 바로가기
개발자/Android

[Android, Java] 소켓 연결시 연결시간 설정

by Alex.K 2011. 12. 1.
반응형


안드로이드 기기와 서버간의 소켓 연결을 할때 소켓 서버가 생성 되어있지 않거나, 연결이 안되는 경우에는 시간이 5초 이상으로 대기하게 되는데 그때 안드로이드 기기에서는 timeout이 발생하게 됩니다.

이 시간을 설정하는 부분을 정말 고민하고 또 고민해봤는데 정말 간단하게 구현이 되어있을줄은 생각도 못했네요.

현재 공부하면서 그때그때 글을 올리는 것이므로 자세한 설명이 안되어 있을수도 있으니 이해 부탁드립니다.

Socket의 connect 시 timeout 을 걸고 싶으시다면
 
socket = new Socket();
 
socket.connect(new InetSocketAddress(ip, port), 1000);

coonect 메소드에서 1000은 1초를 의미하게 됩니다. 저 시간 부분을 임의로 설정을 하게 되면 소켓 연결시에 timeout 시간을 설정하게 됩니다.

그리고

connect 된 후 read  시 timeout을 주고 싶으시다면
 
socket.setSoTimeout(1000);
 
과 같이 주시면 됩니다.


 
반응형

댓글