[C#] TCP Socket Server 라이브러리 만들기


TCP 통신을 하기위해서는 Server 와 Client 가 필요합니다.

TCP Socket Server 코드는 아래 코드를 참고합니다.


1. 생성자 / public SocketServer(string strIP, string strPort)

TcpListener 초기화에 필요한 IP & PORT 정보를 인자로 받아 맴버변수 할당


2. Start 함수 / Start()

TcpListener 객체 생성 및 Start


3. Stop 함수 / Stop()

TcpListener Stop


4. Run 함수 / Run()

Run 함수는 1회 호출 시 Client 로 부터 수신된 메시지를 처리 후 함수가 리턴됩니다.

따라서, 외부에서 선언한 Thread, Timer, while 등의 코드에서 지속적으로 Run 함수를 호출해야합니다.


5. GetSendMessage 함수 GetSendMessage(string strMsgRecive)

아래의 SocketServer 클래스를 그대로 사용하신다면 본 함수의 내부를 수정하여 사용하면됩니다.

기본적으로 SocketServer 클래스를 상속을 받아 GetSendMessage 함수를 재정의 후 사용하도록 설계된 클래스입니다.


※ 본 코드는 아직 테스트가 완료되지 않은 코드이기 떄문에 버그가 발생할 수 있습니다.

 


 

아래와 같이 SockerServer 클래스를 상속 받아 TestConsole 에서 while 문으로 호출하는 테스트 코드를 짜보았습니다.

"Waiting for Client Message..." 가 Write 된 후 대기하는 모습이 보입니다.

Client 에서 Recive Message 가 오기전까지 Run() 함수에서 대기하는 모습을 볼 수 있습니다.

 

 

 

참고링크

[C#] TCP Socket Client 라이브러리 만들기
http://softore.tistory.com/2

'프로그래밍 > C#' 카테고리의 다른 글

[C#] TCP Socket Client 라이브러리 만들기  (0) 2017.01.24
블로그 이미지

소프토어

,