agent::wait_for_one 方法

等待任一指定的代理完成其任务。

static void __cdecl wait_for_one(
   size_t _Count,
   _In_reads_(_Count) agent ** _PAgents,
   agent_status& _Status,
   size_t& _Index,
   unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE
);

参数

  • _Count
    在 _PAgents 数组中存在的大量代理指针。

  • _PAgents
    指向要等待代理的指针的数组。

  • _Status
    对将放置代理状态的变量的引用。

  • _Index
    对将放置代理索引的变量的引用。

  • _Timeout
    要等待的最长时间,以毫秒为单位。

备注

当代理进入 agent_canceled 或者 agent_done 状态时完成代理任务。

如果形参 _Timeout 的值不是常量 COOPERATIVE_TIMEOUT_INFINITE,那么若在代理完成其任务之前指定的时间量到期,将会引发异常 operation_timed_out

要求

**标头:**agents.h

命名空间: 并发

请参见

参考

agent 类

agent::wait 方法

agent::wait_for_all 方法

agent_status 枚举