进程间通信:命名管道不能同时读写的问题
我想在客户端创建两个读写命名管道的线程,读线程负责一直监听服务器端是否有数据传过来,类似这样
DWORD WINAPI ThreadProcRead(LPVOID lpParam)
{
while(TRUE)
{
if(ReadFile())
{
//处理读到的数据
}
}
}
而写线程于此同时负责将客户端的一些其他需求发送给服务器,类似这样
DWORD WINAPI ThreadProcWrite(LPVOID lpParam)
{
WriteFile()
}
但我现在的问题是,读线程在一直等待的过程中,写线程无法将数据写到有名管道。请问有大神知道为什么吗?关闭读线程的循环等待是可以写到管道的,但命名管道不是双工的吗?为什么不能同时读写呀?