Win32:匿名管道上的事务

时间:2010-09-21 21:13:53

标签: windows winapi pipe anonymous-pipes

TransactNamedPipe Function的文档声称“此参数也可以是CreatePipe函数返回的匿名管道的句柄。” 这意味着可以在匿名管道上使用事务。据我所知,事务是读/写操作,匿名管道是读或写 - 这对我没有意义。

  1. 是否真的可以使用匿名管道进行交易?
  2. 如果是,怎么样?例如,从调用CreatePipe获得的两个句柄中的哪一个应该传递给TransactNamedPipe?

1 个答案:

答案 0 :(得分:1)

警告:我没试过这个。但是CreatePipe的MSDN文档包含了为什么这可能有效的确凿证据。这些文档在这一点非常成熟 - 命名管道是一个非常早期的Windows传输 - 如果这是不正确的话会让我感到惊讶。

  

使用匿名管道实现   具有唯一名称的命名管道。   因此,您经常可以传递一个句柄   到一个函数的匿名管道   这需要一个命名的句柄   管。

这与上面提供的引用相结合,表明这将有效。不确定你会使用CreatePipe的句柄(读或写) - 也许两者都可以工作,因为这是一个单一的双工命名管道。