Windows上的NSOperationQueue是否等价?

在OSX或iOS上,NSOperationQueue对于调度asynchronous任务非常有用。 Windows上有类似的设施吗?

Windows有几个线程池API 。 “旧的线程池API”更像NSOperationQueue ,但新的线程池API被推荐用于新的代码。

最相似的Win32 API是线程池 API。

来自MSDN :

线程池应用程序编程接口(API)使用基于对象的设计。 以下每个对象都由用户模式数据结构表示:

  • 池对象是一组可以用来执行工作的工作线程。 每个进程都可以根据需要创建具有不同特性的多个独立池。 每个进程还有一个默认池。

  • 清理组与一组回调生成对象相关联。 存在函数来等待并释放每个清理组成员的所有对象。 这使应用程序无需跟踪所创建的所有对象。 一个工作对象被分配给一个池,并可选择分配给一个清理组。 它可以发布,导致池中的工作者线程执行其回调。

  • 一个工作对象可以有多个未解决的帖子; 每个产生一个回调。 岗位经营不能因资源匮乏而失败。

  • 计时器对象控制回调的调度。 每当计时器到期时,其回调就会被发送到其工作池。 由于缺乏资源,设置定时器不会失败。

  • 等待对象导致服务器线程在等待的句柄上等待。 满足等待或超时期满后,服务器线程将等待对象的回调过帐到等待的工作者池。 由于缺乏资源,设置等待不会失败。

  • I / O对象将文件句柄与线程池的I / O完成端口相关联。 当一个异步I / O操作完成时,一个工作线程获取操作的状态并调用I / O对象的回调。