一个线程在读取CreateNamedPipe创建的命名管道,没有数据的情况下ReadFile会阻塞。
现在我想让该线程返回,直接关闭管道句柄是安全的做法吗?是否有人尝试过?
注:
我知道可以用Pending I/O或者PeekNamedPipe模型解决,但现在有一个程序用的是我上面提到的方法。该程序在多线程压力测试中卡死,发现个别线程卡在ReadFile没有返回,怀疑关闭句柄并不能安全解除ReadFile阻塞。
请问是否有人遇到过相同的问题,或者是用关闭句柄实现过但并没有遇到问题?
感谢解答。