问题标签 [nio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
16210 浏览

java - 如何使用java nio编写完整的服务器客户端通信

我是java NIO的新手。我必须使用 Java NIO 编写一个简单的服务器客户端通信程序。

是否有任何示例程序或任何链接我可以去哪里?

0 投票
6 回答
2224 浏览

java - 如何在不增加文件限制的情况下在 Java 中打开 20000 个客户端?

每当我打开一个套接字通道时。如果客户端接受,则在内部创建 1 个文件描述符,因此我可以在 Linux 中创建最多 1024 个客户端。
但是我想在不增加 Linux 中文件描述符限制的情况下创建更多客户端(ulimit -n 20000) 那么如何在 Java 中创建更多套接字?

0 投票
5 回答
10057 浏览

java - Java NIO 中的异步通道关闭

假设我有简单的基于 nio 的 java 服务器。例如(简化代码):

所以,这是一个简单的单线程非阻塞服务器。

问题在于以下代码。

当我在同一个线程(接受连接和读取数据的线程)中关闭通道时,一切正常。但是当连接在另一个线程中关闭时我遇到了问题。例如

在这种情况下,我最终在服务器上的状态为 TIME_WAIT 的套接字和在客户端的 ESTABLISHED 状态下结束。所以连接没有优雅地关闭。有什么想法有什么问题吗?我错过了什么?

0 投票
4 回答
9363 浏览

java - SSL 和 SocketChannel

理想情况下,我只需要一个简单的SSLSocketChannel.

我已经有一个组件可以通过普通方式读取和写入消息SocketChannel,但是对于其中一些连接,我必须通过网络使用 SSL;但是,对这些连接的操作是相同的。

有谁知道免费的SSLSocketChannel实现(使用适当的选择器)或类似的东西?我找到了这个,但是选择器不接受它,因为它的供应商不是 SUN。

我正在通过一个简单的对象将 read_from/writing_to 网络逻辑与网络数据的插入和检索解耦,以便在SSLEngine不生气的情况下使用 a ,但考虑到我不知道的事实,正确实现它真的很棘手SSL协议的内部...

0 投票
1 回答
1147 浏览

java - SocketChannel如何知道读取文件何时完成?

我正在使用套接字通道和 NIO 概念从客户端读取数据。
Socket Channel 是如何知道文件读取完成的?

如果数据很小,我会一次读取数据,但是如果数据很大,我会分片读取数据,最后得到相同的数据现在我想知道通道如何理解数据的结尾。
有什么方法可以让我知道文件读取何时完成?

0 投票
1 回答
7921 浏览

java - 如何将数据写入套接字通道

是否有任何小型工作程序用于使用 java nio 从客户端接收和发送数据。

实际上我无法写入套接字通道,但我能够读取传入数据如何将数据写入套接字通道

谢谢迪帕克

0 投票
3 回答
3242 浏览

java - 如何在 Java 中使用 SocketChannel 发送然后读取 \n

我正在将SocketChannelJava 类用于客户端/服务器应用程序。我可以发送和检索数据。但如果我的数据包含'\n',那么我不会读取正确的数据。例如

我正在使用 US-ASCII 解码。我怎样才能克服这种类型的问题?

谢谢,迪帕克

0 投票
1 回答
2071 浏览

java - 使用java nio套接字通道写入大数据的问题

我可以使用 java nio 发送小数据。

但是如果我想发送一个非常大的数据,那么我的套接字通道就不能正常工作。

所有数据都已发送。

我想从服务器读取数据,所以我使用 BufferedInputStreaReader.readLine(); 在这种情况下,我没有收到任何错误,我也无法检索我发送的任何数据

谢谢迪帕克

0 投票
1 回答
1634 浏览

java - 如何读取套接字中的大量数据并写入套接字通道

如何使用 socket 的 DataInputStream 读取非常大的数据 如果数据是 String 格式并且长度超过 1,00,000 个字符。

另外如何在 java 中使用 SocketChannel 编写大数据?

0 投票
3 回答
201 浏览

java - NIO 中的线程实现需要帮助

我想创建 NIOServer,它使用 1 个线程从客户端读取数据并使用另一个线程将数据写入客户端。也接受客户端连接将在其他线程中。

有没有在线帮助

谢谢迪帕克