멀티스레드를 이용해서 다수의 클라이언트를 다루는 채팅 프로그램을 만들고 있습니다
클라이언트쪽도 역시 멀티스레드를 이용해서 워커스레드 하나는 다른 유저의 메세지를 서버로부터 계속 받아와 뿌려주고, 다른 워커 스레드 하나는 해당 클라의 메세지를 서버에 전송하는 형식이구요
서버쪽은 워커스레드가 다수의 클라이언트의 메세지를 받아 접속한 모든 클라에게 뿌려주도록 하고있어요..
지금 하고싶은게 3가지 정도가 있는데 감이 잘 잡히지 않아 질문드립니다. 깨알같은 힌트라도 좋으니 도와주시면 감사하겠습니다 ㅠㅠ
1. 서버의 stdin을 받아 종료하도록 하는 기능
서버에서 워커스레드를 하나 더 만들어서 유저 인풋을 계속 받도록 무한루프를 돌린다음 특정한 종료 메세지 (ex. quit)이 들어오면 접속된 모든 클라이언트의 연결을 끊고 listen 소켓도 닫은 다음 서버 프로그램을 종료시키려고 합니다. 그 외에도 많은 부수적인 기능(접속한 클라이언트를 보여준다더지 하는)을 넣을 수 있을것 같은데 일단 종료 메세지를 받는거 자체가 안되네요..