【发布时间】:2015-04-02 11:07:04
【问题描述】:
我在 Windows 上有一个应用程序,它有两个线程:
First one - 正在从一些外部存储读取信息并通过WriteFile 将其写入管道
Second one - 正在使用ReadFile从管道中读取信息并对其进行一些操作。
我正在使用通过CreatePipe 创建的常用匿名管道。所以我的问题是 - 当我关闭写入线程中的管道时,有时读取线程还没有完成读取,这导致管道损坏。那么如何确保在关闭管道之前已读取所有书面信息?
【问题讨论】:
-
根据上下文,等到两个线程都退出后再关闭句柄可能更明智。
标签: c++ multithreading winapi