我想创建NIOServer,它使用1个线程从客户端读取数据,并使用另一个线程将数据写入客户端。 也接受客户端连接将在其他一些线程中。
有没有在线帮助
由于 迪帕克
答案 0 :(得分:1)
为什么要使用这么多线程,如果使用选择器和单个线程更轻松地完成所有操作? 如果你想要一个多线程的网络I / O方法,那么你应该考虑普通的旧的阻塞套接字。
顺便说一句,你可以用3个选择器完成所有这些:一个接受连接,一个读取和一个写入。当您接受连接时,您可以使用其他两个选择器注册该通道,并使用适当的兴趣操作。当然,当您要释放频道时,您必须从两个选择器中取消SelectionKey(读取和写入)或关闭它。
答案 1 :(得分:0)
我建议你看一下示例代码,它来自sample / nio / server
下的JDK答案 2 :(得分:0)
我建议你Apache Mina:非常灵活,高级抽象,高性能等。