线程池API

线程池API

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

  • 池对象是一组可用于执行工作的工作线程。每个进程可以根据需要创建具有不同特征的多个隔离池。每个进程都有一个默认池。
  • 清理组与一组回调生成对象相关联。存在等待并释放作为每个清理组成员的所有对象的函数。这使应用程序无需跟踪它创建的所有对象。
  • 将工作对象分配给池,并可选择分配给清理组。它可以被发布,导致池中的工作线程执行其回调。工作对象可以有多个未完成的帖子;
    每个都会产生一个回调。由于缺乏资源,后期操作不会失败。
  • 计时器对象控制回调的调度。每次计时器到期时,其回调都会发布到其工作池。由于缺乏资源,设置计时器不会失败。
    等待对象导致服务器线程在等待句柄上等待。在等待或超时期限到期后,服务员线程将等待对象的回调发布到等待的工作池。由于缺乏资源,设置等待不会失败。
  • I / O对象将文件句柄与线程池的I / O完成端口相关联。当异步I / O操作完成时,工作线程会获取操作的状态并调用I /
    O对象的回调。

下表描述了原始和当前线程池API的功能。

特征原始API当前的API
同步RegisterWaitForSingleObjectCloseThreadpoolWait
UnregisterWaitExCreateThreadpoolWait
SetThreadpoolWait
WaitForThreadpoolWaitCallbacks
工作QueueUserWorkItemCloseThreadpoolWork
CreateThreadpoolWork
SubmitThreadpoolWork
TrySubmitThreadpoolCallback
WaitForThreadpoolWorkCallbacks
计时器CreateTimerQueueCloseThreadpoolTimer
CreateTimerQueueTimerCreateThreadpoolTimer
ChangeTimerQueueTimerIsThreadpoolTimerSet
DeleteTimerQueueTimerSetThreadpoolTimer
DeleteTimerQueueExWaitForThreadpoolTimerCallbacks
I / OBindIoCompletionCallbackCancelThreadpoolIo
CloseThreadpoolIo
CreateThreadpoolIo
StartThreadpoolIo
WaitForThreadpoolIoCallbacks
清理CloseThreadpoolCleanupGroup
CloseThreadpoolCleanupGroupMembers
CreateThreadpoolCleanupGroup
CloseThreadpool
CreateThreadpool
SetThreadpoolThreadMaximum
SetThreadpoolThreadMinimum
回调环境DestroyThreadpoolEnvironment
InitializeThreadpoolEnvironment
SetThreadpoolCallbackCleanupGroup
SetThreadpoolCallbackLibrary
SetThreadpoolCallbackPool
SetThreadpoolCallbackPriority
SetThreadpoolCallbackRunsLong
回调CallbackMayRunLong
回调清理DisassociateCurrentThreadFromCallback
FreeLibraryWhenCallbackReturns
LeaveCriticalSectionWhenCallbackReturns
ReleaseMutexWhenCallbackReturns
ReleaseSemaphoreWhenCallbackReturns
SetEventWhenCallbackReturns

相关话题

线程池

使用线程池功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值