학교 수업/컴퓨터네트워크
멀티스레드 채팅 클라이언트
식혜드식혜
2024. 10. 14. 10:23
윈폼 채팅 클라이언트를 제작해보자
채팅 클라이언트의 기본적인 기능 구현을 위한 디자인
로그인 ID창, 접속버튼, 채팅창, 메시지 입력, 보내기 버튼
기본 윈폼에 각종 컨트롤 추가
로그인 ID 창, 접속 버튼, 채팅창, 메시지 입력, 보내기 버튼을 추가한다.
각 컨트롤에 연결된 함수를 생성한다.
1. 연결 버튼의 소스 추가 (지정된 서버에 주어진 ID로 접속)
2. 보내기 버튼의 소스를 추가 (메시지 보내기)
3. 종료 버튼의 소스 추가 (소켓종료)
4. 스레드를 이용한 메시지 수신처리
※주의※ 윈도우 멀티쓰레드
윈도우 멀티 쓰레딩 - 크로스 쓰레드 문제
- UI 컨트롤을 갱신하려면 해당 UI 컨트롤을 만든 UI 쓰레드에서 갱신해야
함!
--> InvokeRequired 속성 체크
: 현재 쓰레드로 컨트롤 엑세스할 수 있는지 검사
MethodInvoker() : 대리자 생성