728x90
반응형
[Error Note] 27. Java socket 오류: Socket closed
자바에서 소켓 통신을 배우던 중, 'Socket closed'라는 오류가 발생했다.
e.stacktrace를 통해 출력된 코드를 확인해보자. 원시코드를 읽어보면 해당 state가 connected보다 클 때, "Socket closed"를 출력하게끔 코드가 작성되어 있다. 서버측의 코드가 닫혀 있고, 해당 서버로 접속을 시도할 때 이 에러메세지가 출력되는 것이다.
'어떤 부분에서 에러가 발생한걸까? 왜 서버의 소켓이 닫혀있지?' 라고 생각하던 도중, join()이 선언되지 않은 것을 확인할 수 있다.
join()은 다른 스레드가 종료되기 전까지는 해당 스레드가 종료되지 않게 기다려주는 역할을 한다.
서버, 클라이언트에 각각 .join()을 선언해준 뒤, 다시 채팅 프로그램을 작동시키니 성공적으로 작동하는 것을 확인할 수 있었다. (ㅜㅜ) 소켓 통신을 사용할 때는 join()을 쓰는 것을 잊지 말자!
728x90
반응형
'Error Note' 카테고리의 다른 글
[Error Note] 29. MySQL 데이터 입력 에러 : Data too long for column (0) | 2024.05.29 |
---|---|
[Error Note] 28. 소켓 통신 실행 중 오류 : Address already in use (0) | 2024.05.23 |
[Error Note] 26. GitHub 계정 정보 연동 오류: 커밋 현황 연동 안 됨 (0) | 2024.05.20 |
[Error Note] 25. InterruptedException : 쓰레드 실행 오류 (0) | 2024.05.17 |
[Error Note] 24. 쓰레드 동시 실행 오류 : Illegal Thread State Exception (0) | 2024.05.16 |