多线程同步方案同步选择

在WIN32的C++多线程开发中的生产消费使用的同步方案中,一般会采用 条件变量,来做为等待判断的条件。
  我在网狐的工作线程中看见了一种新的使用方法: 
            工作线程使用 GetQueuedCompletionStatus 等待事件触发。
            生产线程使用 PostQueuedCompletionStatus 产生消息,另 GetQueuedCompletionStatus 触发执行。
    我在网络中找资料,并没有关于多线程 同步使用 IOCP 完型端口的案例。
    都是使用信号量,互斥,临界,事件,性能上临界的性能相对较优,我看了网狐的实现方式,这种采用 IOCP的方法反而是最简单的。
    问题来了: 使用IOCP 作为生产消费的实现方案,有什么优势或者相关的资料呢?国内网络找到的都是清一色的网络编程的异步I/O。

这看上去是API帮你做了同步处理。

你要资料?MSDN不行呢?
https://msdn.microsoft.com/en-us/library/windows/desktop/aa365198(v=vs.85).aspx

https://msdn.microsoft.com/en-us/library/windows/desktop/aa364986(v=vs.85).aspx

java中通过同步代码快或同步对象进行限制