AvRtWaitOnThreadOrderingGroup 函数 (avrt.h)
允许线程排序组的客户端线程等待,直到它们应执行。
语法
AVRTAPI BOOL AvRtWaitOnThreadOrderingGroup(
[in] HANDLE Context
);
参数
[in] Context
上下文句柄。 此句柄由 AvRtCreateThreadOrderingGroup 或 AvRtJoinThreadOrderingGroup 函数返回。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
当此函数返回时,线程应完成该时间段的处理,然后再次调用函数。
如果线程在创建组时父线程指定的超时间隔内无法完成其处理,则会从线程排序组中删除该线程。 因此,当线程完成其处理循环时,对 AvRtWaitOnThreadOrderingGroup 的下一次调用将失败,最后一个错误代码设置为ERROR_ACCESS_DENIED。
如果在等待期间删除线程排序组,此函数最终会超时并返回ERROR_ACCESS_DENIED。
示例
#include <windows.h>
#include <avrt.h>
#include <stdio.h>
#pragma comment(lib, "Avrt.lib")
HANDLE Context;
int main( void )
{
while(AvRtWaitOnThreadOrderingGroup(Context))
{
// Complete task for this period.
}
return 0;
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | avrt.h |
Library | Avrt.lib |
DLL | Avrt.dll |