在创建进程出口时,Windows中的命名管道会发生什么?

时间:2013-12-12 23:03:30

标签: windows pipe named-pipes

场景:进程使用CreateNamedPipe()创建管道并使用ConnectNamedPipe()连接到它,传输一些数据,然后退出(不进行清理)。管道是否仍然存在?在创建过程退出时,在CreateFile()的不同进程中打开它的另一面是否会出错?

更一般地说,命名管道的生命周期是多少?如何清理过时的管道?

1 个答案:

答案 0 :(得分:5)

管道是内核对象,它们一直处于活动状态,直到所有句柄都关闭为止。

如果客户端没有很好地说再见而另一个进程仍在继续使用它,你很可能会得到ERROR_BROKEN_PIPE。