场景:进程使用CreateNamedPipe()
创建管道并使用ConnectNamedPipe()
连接到它,传输一些数据,然后退出(不进行清理)。管道是否仍然存在?在创建过程退出时,在CreateFile()
的不同进程中打开它的另一面是否会出错?
更一般地说,命名管道的生命周期是多少?如何清理过时的管道?
答案 0 :(得分:5)
管道是内核对象,它们一直处于活动状态,直到所有句柄都关闭为止。
如果客户端没有很好地说再见而另一个进程仍在继续使用它,你很可能会得到ERROR_BROKEN_PIPE。