我正在将C++ API代码移植到.NET,并研究函数调用WaitHandle.WaitAny来替代WaitForMultipleObjects,但是当使用.NET4进行调试时,我可以看到此函数已被关联

private static extern int WaitMultiple(
                               WaitHandle[] waitableSafeHandle,
                               int msTimeOut,
                               bool exitContext,
                               bool WaitAll);

这使我认为该功能对端口不适用。还有其他建议吗?

最佳答案

的确,WaitHandle.WaitAny()不足以匹配WaitForMultipleObjects()的功能。但是,您只需要使用WaitHandle.WaitAll()

  • WaitHandle.WaitAny()与使用WaitForMultipleObjects()参数设置为WaitAll的调用的FALSE匹配。
  • WaitHandle.WaitAll()将其与WaitAll设置为TRUE匹配。
  • 关于c# - WaitHandle.WaitAny匹配WaitForMultipleObjects功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7431171/

    10-10 14:57