0

Java NIO Socket Framework据称向开发人员隐藏了非阻塞 IO 的肮脏细节,允许他们构建高度可扩展的应用程序,这些应用程序可以仅使用一个线程处理超过 10000 个传入和传出套接字。

  • 使用 Java 2 SE/EE 的典型版本,非阻塞 IO 仍然很痛苦吗?

  • 这个框架还有必要和有用吗?

谢谢你的时间。

4

2 回答 2

3

当然,NIO 对一些细节进行了抽象。非阻塞 IO 仍然让人头疼(至少,我发现它是),但至少它是可行的。(我个人更喜欢 .NET 风格的异步 IO,但那是另一回事。)

通常使用阻塞 IO:对于大多数任务,这就是我所需要的,而且我不会通过使用非阻塞 IO 获得显着收益。在某些情况下(比如你提到的那个),如果你想让你的线程保持关闭,非阻塞 IO 确实是唯一的前进方式。

我建议您了解它,使用它,然后使用判断来决定何时在生产代码中使用它。我不建议开始在任何地方使用它...

于 2009-09-14T19:07:38.083 回答
1

是的,NIO 非常有用。NIO 也有点难以使用。根据您的需要,您可以考虑使用包装 NIO 的框架,例如grizzlyminaGrizzly 是来自sun Oracle的glassfish appserver的网络部分。

Mina 是来自 Apache.org 的网络应用程序框架。

就我个人而言,我更喜欢灰熊,但这只是我。

于 2009-09-15T08:55:11.590 回答