0

这听起来可能很奇怪。我创建了一个基于每个套接字结构线程的游戏服务器(是的,每个用户只有一个线程;响应由工作线程发送给客户端)。我生成的线程首先对用户进行身份验证并处理登录,之后它只接收数据并将其排队等待处理。认证部分很关键,实现时间很长,再次实现也需要这么长时间,所以我在想,认证完成后,我是否可以将我拥有的阻塞套接字转换为 SocketChannel 的套接字,以便选择器可以以非阻塞方式处理其消息?

4

1 回答 1

2

你不能。您必须从 SocketChannel 开始,然后您可以在阻塞模式下使用 socket(),或者在阻塞或非阻塞模式下使用通道本身。

于 2011-11-20T02:34:52.000 回答