我对管道知之甚少,但在我的 Visual C++ 代码中使用管道连接了两个进程。管道运行良好,但我需要向其添加错误处理,因此想知道如果创建它的服务器崩溃时管道会发生什么情况,以及我如何从客户端进程中识别它?
此外,如果客户端进程尝试访问同一个管道,在服务器崩溃后,如果没有错误处理,会发生什么情况?
编辑: 如果我继续创建新管道(比如使用系统时间作为管道名称),而前一个管道因服务器崩溃而损坏,会对内存产生什么影响?这些破管道会不会从内存中移除?
最佳答案
IIRC ReadFile 或 WriteFile 函数将返回 FALSE 并且 GetLastError() 将返回 STATUS_PIPE_DISCONNECTED
我想这种处理在你的代码中实现了,如果没有你最好添加它;-)
关于c++ - 如果服务器崩溃,命名管道会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3901146/