java - 如何中断从输入流中读取
问题描述
我目前正在处理服务器-客户端通信。在服务器端,我有一个线程持续监听来自客户端的任何传入数据。
while ((foo = (Foo) objectInputSteam.readObject()) != null) {...}
有时我还需要从服务器向客户端发送数据。(不作为直接响应。)通过同一个套接字向客户端发送一些数据后,一旦新数据到达服务器(0xAC)就会抛出异常。据我所知,这是因为 inputreader 在通过同一个套接字发送数据时正在读取。在将数据发送到客户端时有什么方法可以中断侦听线程,或者我是否需要在不同的端口上创建第二个套接字以用于传出流量?
解决方案
推荐阅读
- python - Anaconda Python:ModuleNotFoundError:没有名为“matlab”的模块
- ios - 无法将视图控制器连接到 Swift 文件
- android-studio - 为什么在mac上重启几次后android studio会发生变化?
- c++ - 对于同一任务,线程切换的等待时间系统地在 0 到 30000 微秒之间
- visual-studio-code - VSCode:是否可以轻松地格式化/着色我自己的“语言”?
- llvm - 获取函数参数的名称
- angularjs - 社交共享 Angularjs 将图像 URL 共享为照片而不是照片链接
- java - 比较答案(不在数组中)
- azure - Azure 在向逻辑应用发布请求时创建一个驱动器文件
- javascript - 如何使用 React 跨不同组件保持状态