2011-01-18 6 views
1
while (true) { 

    ServerSocket myServerSocket = new ServerSocket(9999); 
    Socket skt = myServerSocket.accept(); 

    Handling obj = new Handling(); 
    obj.handle(skt); 

} 

처음 시도하면이 소켓은 정상적으로 작동하지만 소켓을 허용하지만 그 다음에 루프가 돌아와서 주소가 사용 중이라고 표시됩니다. 이 문제를 어떻게 해결할 수 있습니까?Java 서버 소켓 오류

ServerSocket myServerSocket = new ServerSocket(9999); 
while (true) { 
    Socket skt = myServerSocket.accept(); 
    Handling obj = new Handling(); 
    obj.handle(skt); 
} 

답변

4

루프에 새로운 ServerSocket를 생성하지 마십시오 당신은 단지 루프에서을 받아 필요 그것을 다시 만들기 전에 서버 소켓을 닫지 않았습니다(). 이것은 효과가 있었지만 좋은 습관은 아닙니다.
+1

를이하지만, 작동하지 않았다 영업 이익의 코드가 있다는 것입니다 이유에 적합한 솔루션입니다 : - –