您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

当我无故向水槽写信时,NIO Pipe会抛出“ Broken Pipe”!如何调试?

当我无故向水槽写信时,NIO Pipe会抛出“ Broken Pipe”!如何调试?

好的,所以我发现了问题。首先,感谢所有尝试提供帮助的人。希望你能从我的错误中学到东西。事件链是:

1-我没有耗尽接收缓冲区(源通道读入的缓冲区),最终缓冲区已满。

2-现在已满,pipeSourceChannel.read(readBuffer)返回0字节。有要读取的数据,但无法在完整的缓冲区上读取。

3-这导致通道被关闭(我自己在bytesRead == 0上这样做)和BrokenPipe。

其他 2022/1/1 18:27:25 有483人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶