2016-10-18 2 views
0

자바에서 클라이언트 - 서버 채팅 프로그램을 만들려고합니다. 나는 클라이언트가 동시에 서버를 통해 서로 연락하기를 원한다. 나는 서버와 클라이언트 모두에서 얼마나 많은 쓰레드를 사용할 것인지 알고 싶다.클라이언트 - 서버 채팅 프로그램

+0

최소 스레드 : 서버가 실행되고있는 하나의 메인 스레드에서 연결중인 각 클라이언트에 대해 하나의 스레드. '클라이언트 측'에서 서버로부터 메시지를 대기중인 스레드 하나 Applcation'의 주요 스레드. 그저 사용할 수있는 모델 일뿐입니다 ... – GOXR3PLUS

답변

0

디자인에 따라 다릅니다. 사용자가 종료 할 때까지 모든 클라이언트가 연결을 유지하므로 프로젝트를 설계하면 모든 새 연결에 대해 새 스레드를 할당해야합니다. 연결을 유지하는 경우 모든 연결에 하나의 스레드를 사용하려고하면 서버는 연결 수신 대기 이외의 작업을 수행 할 수 없습니다.

그러나 클라이언트가 주기적으로 서버에 연결하면 하나의 스레드 또는 고정 된 수의 스레드 (예 : 스레드 풀)를 사용하여 연결을 처리 할 수 ​​있습니다.

연결 당 스레드 모델을 사용하여 모든 연결을 유지하는 것이 좋습니다.

관련 문제