[JAVA] 간단한 Sender&Receiver
본 자료는 미리보기를 지원하지 않습니다.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[JAVA] 간단한 Sender&Receiver에 대한 보고서 자료입니다.

목차

없음

본문내용

3. 여러 가지 상황에 대한 프로그램 결과화면 및 분석
크게 두 가지 문제가 있다.
1:1메신저프로그램을 기초로 시작하여 스레드를 고려하지 않고 프로그램을 설계하였기 때문에 Receiver의 소켓연결이 1회밖에 되지 않는다는 점과, 소켓연결이 1회밖에 되지 않고, 추상화된 다른 포트를 연결해 주지 않았다는 점 때문에 n:1 다중연결이 되지 않는다.

1) MsgReceiver는 그대로 유지, MsgSender 프로그램 종료 후 다시 실행했을 때의 결과

2) MsgReceiver에 두 개의 MsgSender프로그램이 접속하려 할 때(n:1 message프로그램)

위의 두 가지 문제는 모두 같은 원인에 의하여 생겨난 오류이다.

MsgReceiver의 코드를 살펴보면 소켓을 연결하는 accept부분이 처음으로 소켓연결을 요청한 Sender에게만 연결요청을 받아준다. 그렇기 때문에 MsgSender가 처음 소켓연결을 신청하고, 연결한 다음, 프로그램을 종료 후 다시 소켓연결신청을 한다고 해도 더 이상 MsgReceiver는 소켓연결신청을 받아들일 수가 없게 되는 것이다.
마찬가지로 두 번째 예제에서도 처음 접속한 MsgSender1이후 접속한 MsgSender2의 소켓연결 요청 또한 MsgReceiver가 받아 줄 수 없게 되는 것이다.

이 부분을 해결하기 위해서 accept부분 바깥에 반복문을 만들어 계속적으로 접속하려는 모든 Sender들의 소켓연결신청을 허용해야 할 것이다.
추가로, 소켓연결을 승인함과 동시에 MsgReceiver는 스레드를 생성하여, 각 Sender들의 수신된 메시지를 읽어 출력시키는 방법을 추가하는 것이 좋다고 생각한다. 스레드는 각 Sender의 소켓승인을 허용한 시점부터, 프로그램을 종료하고 해제하는 시점까지 유지되어야 한다.
이 모든 것을 종합하면 오른쪽의 그림과 같은 state diagram이 나오게 된다.
  • 가격1,000
  • 페이지수6페이지
  • 등록일2012.11.15
  • 저작시기2012.11
  • 파일형식압축파일(zip)
  • 자료번호#776017
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니