socket的read阻塞,路过的大佬来看看呗~!

不会吹笛的章鱼哥 2017-07-31 08:30:34
服务端:

客户端:


请教各位大佬,为何服务端在第49行的read阻塞,而客户端明明是有发送的....
...全文
243 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 4 楼 zc881124 的回复:
你这逻辑是服务端先写再读 客户端写读再写? 你客户端刚开始能读到吗?
先写再读 就应该对应 先读再写吧? 客户端读到了。
110成成 2017-07-31
  • 打赏
  • 举报
回复
你这逻辑是服务端先写再读 客户端写读再写? 你客户端刚开始能读到吗?
  • 打赏
  • 举报
回复
引用 1 楼 dyc12ii 的回复:
客户端代码没贴全, 你是不是客户端没有停止,然后客户端的输出流也没有关闭? 如果是这样的话,服务端是读不到结束的,它就以为你还没发完,就一直等. 如果是我说的这个情况,解决方案有两个, 1.给服务端发送结束标记,服务端读到标记就结束读取 2.让客户端每发送完一次都关流,但是这样做对资源利用率太低,不建议
服务端一个字节都不读。。。
  • 打赏
  • 举报
回复
服务端一个字节都不读。。。
你好sun悟空 2017-07-31
  • 打赏
  • 举报
回复
客户端代码没贴全, 你是不是客户端没有停止,然后客户端的输出流也没有关闭? 如果是这样的话,服务端是读不到结束的,它就以为你还没发完,就一直等. 如果是我说的这个情况,解决方案有两个, 1.给服务端发送结束标记,服务端读到标记就结束读取 2.让客户端每发送完一次都关流,但是这样做对资源利用率太低,不建议

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧