2011-11-20 3 views
0

이상하게 들릴 수 있습니다. 소켓 구조에 따라 스레드를 기반으로 게임 서버를 만들었습니다 (예, 사용자 당 단 하나의 스레드, 응답은 작업자 스레드에 의해 클라이언트에 전송됩니다). 내가 생성 한 스레드는 먼저 사용자를 인증하고 로그인을 처리 한 다음 처리하기 위해 데이터를 수신하고 대기시킵니다. 인증 부분은 매우 중요하며 구현하는 데 오랜 시간이 걸리므로 다시 구현하는 데 시간이 오래 걸릴 것입니다. 그래서 인증이 끝난 후 SocketChannel의 소켓으로 변환하여 차단기를 변환 할 수 있습니까? 메시지를 비 차단 방식으로 처리합니까?블로킹 Socket 객체를 SocketChannel의 소켓으로 변환 하시겠습니까?

답변

2

수 없습니다. SocketChannel으로 시작해야하며, 차단 모드에서 socket()을 사용하거나 차단 모드 또는 차단 해제 모드에서 채널 자체를 사용할 수 있습니다.