자바 소켓쓸때요

조회수 1245회

try 문 써서 소켓 연결 일단 하잖아요

그리고 sender receive 하면서 뭐 문자 같은걸 서로 전송하게끔 하는데

이게 try 문 안에서는 계속 사용 가능한건 당연한데 ,,, 추가적으로 버튼 클릭때 추가 전송 하려 하는데 이때는 sender receive 함수를 불러오지는 못하고 그렇다고 다시 연결해서 쓰기도 그런데 보통은 어떻게 사용을 하죠 ? static 이건 방법도 안되고 ,, 보통 어떻게 하는 지 궁금합니다

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 소켓을 다루기 어려운 이유는 최소 멀티쓰레드를 고려해야 하기 때문입니다.

    블럭킹 방식이라면 기본적으로 멀티쓰레드 환경입니다.

    이때는 쓰레드 하나는 무한반복으로 버퍼 수신을 확인하면서 작업합니다. 즉 보내는 것은 이벤트마다 호출하면 되며 수신은 별도의 쓰레드를 생성하여 무한반복으로 처리합니다.

    이런 방법이 블럭킹 소켓을 처리하는 간단한 방법입니다.

    그러나 멀티쓰레드는 어려운 주제가 될 수 있으므로 선행학습이 필요합니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)