게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C#에서 TcpClient 의 Available에 대해 여쭙고싶습니다
게시물ID : programmer_18208짧은주소 복사하기
작성자 : hello_world@
추천 : 0
조회수 : 540회
댓글수 : 2개
등록시간 : 2016/08/19 15:31:50
안녕하세요
 
C# 으로 간단한 채팅 프로그램을 만들고 있는데 풀리지 않은 의문이 있어서 고수님들께 여쭈러 왔습니다.
 
큰 폼이 하나 있고 폼에 버튼이 달려있어요
 
버튼을 누르면 새 창이 열리면서 그 창에 포함된 스크립트에서 클라이언트가 생성되면서 TcpClient를 만들어서 접속하고,
계속 tcpClient.Available 을 검사해서 tcpClient.Available > 0 이면 스트림 리더로부터 메세지를 읽어와 화면에 뿌려줍니다.
닫기 버튼을 누르면 tcpClient.Close() 해주는데요,
 
의아한것은
 
창을 닫고 나서 다시 버튼을 눌러 새 창을 생성하면
아무 내용이 없어야 하는데..................... 기존에 채팅을 했던 내역이 남아있습니다.
남아있는거 같기도 하고 빈 창에 창을 생성함과 동시에 빠르게 메세지가 올라가는거 같기도 하구요..;;
 
모든 프로그램을 전부 껐다키면 당연히 내용은 삭제되어 있는데..
 
그 버튼 눌러서 새 클라이언트를 만드는 부분에서..기존 대화 내역이 남아있습니다.
tcpClient.Available 이 큐라는데 큐에서 제대로 메시지가 안빠지는건지.. 아니면 Close 하는 부분이 잘못된건지.. 왜 그럴까요?ㅠㅠ 도저히 모르겠습니다..
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호