winrt c ++任务队列

时间:2015-04-26 18:55:55

标签: c++ multithreading windows-runtime

我需要在c ++ / cx中创建一个任务队列,但由于我的经验不佳,我不知道如何 目的是:
  - 使用lambda在某个线程中创建任务(" task1 = [](){}")
  - 然后将此任务添加到任务队列,在其他线程中执行任务队列
  - 当任务期望它排队时,它不执行
  - 仅在先前执行的任务之后执行的任务

正如我所知,当你使用auto a = concurrency :: create_task(lambda)时,它会立即启动。延迟启动此类任务需要一个指向前一个任务的指针,但我无法将其作为我在不同线程中生成的任务。

那么有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

似乎正确使用std::task_group可以解决我的问题 std::task_handle也不会在创建时执行,所以使用它也可以解决我的问题,但它需要自己的队列。