我如何使用线程模拟Java中的非阻滞I/O

问题描述 投票:0回答:2
如果您有专门用于通过网络发送或接收数据的线程,那么线程阻止就不会成为问题,因为只有专用线程将被阻止。

,然后让我们考虑该解决方案对应用程序中线程数的影响:

java sockets datagram
2个回答
1
投票
如果您每个服务器都有很多客户端,那么您应该接受这样一个事实,即他们的某些请求不会立即处理,而只有这样工作的工作。您可以尝试与客户端一起产生I/O线程,但是单个JVM实例的线程数量存在限制。确切的数字取决于JVM可用的堆的大小,以及您的体系结构是32位还是64位,请参见

Here

.

为了异步发送数据,您只需在工作标题上放置一个“ senddatagram”对象,该对象代表要发送的datagrampacket。 注意,您将使用datagram.receive(datagrampacket)和datagram.send(datagrampacket)。


0
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.