java - PrintWriter 等待 flush()

标签 java sockets printwriter

我正在编写多线程套接字服务器。我使用 nio 的 ServerSocketChannel 来接受连接。然后我正在使用 bufferedreader 和 print writer 读取和写入(在单独的线程中)到 socketChannel。 问题是 PrintWriter 锁定并等待 flush() 命令。它会阻塞线程,直到 BufferedReader 接收到数据。

最佳答案

这表明接收器读取速度慢。这就是阻塞 I/O 的工作原理。如果您想要非阻塞 I/O,那么您已经完成了部分工作,因为您已经在使用 NIO。尽管我真的完全看不出在阻塞模式下使用 NIO 有什么意义。

关于java - PrintWriter 等待 flush(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5060138/

相关文章:

java - System.out.println 与 PrintWriter 性能比较?

java - 创建回显服务器 : Connected client gets IO-exception

java - jar 不会使用 eclipse keplar 自动部署在 tomcat 中

java - 如何获取 Java 组件 ID

java - linux连接mysql后找不到数据库

linux - 丢失的 TCP 数据包在哪里?

php - PHP SMTP服务器使用套接字: connection refused

java - 如何建立连接并且在一段时间后不关闭它

java 使用 PrintWriter 将模式打印到文件

java - 在内部存储中保存自定义对象的 ArrayList