java - 取消读操作

标签 java sockets

DataInputStream in;

byte[] b = new byte[1024];
for (;;){
 in.read(b);
 //do something
}

我有上面的代码。在另一个线程中,我正在处理其他一些事件。在这个线程中,我想取消上面代码中显示的读取操作。我该怎么办?

最佳答案

如果你从另一个线程发送一些数据会怎样

final byte[] TERMINATOR = ...;
in.Write(TERMINATOR)

在这种情况下,读取线程不应该使用 for 循环,而是检查“终止符”序列。

关于java - 取消读操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1907253/

相关文章:

java - Runtime.getRuntime().freeMemory()

java - 创建可以在 Java 中放置和移动对象的 2D map

python - FTP 服务器不响应用户请求

Java网络文件传输问题

c++ - FTP 客户端中的 recv()

Java 线程套接字连接超时

c# - SOAP 是简单对象访问协议(protocol)还是面向服务的应用程序平台?

java - 我应该如何执行一个带有循环的 ArrayList 程序,该循环一次呈现列表的每个索引?

java - 如何将@ConditionalOnProperty继承到任何静态内部@Configuration类?

c - UDP 和套接字,recvfrom() 返回 -1 且资源暂时不可用