我需要在c ++ / cx中创建一个任务队列,但由于我的经验不佳,我不知道如何
目的是:
- 使用lambda在某个线程中创建任务(" task1 = [](){}")
- 然后将此任务添加到任务队列,在其他线程中执行任务队列
- 当任务期望它排队时,它不执行
- 仅在先前执行的任务之后执行的任务
正如我所知,当你使用auto a = concurrency :: create_task(lambda)时,它会立即启动。延迟启动此类任务需要一个指向前一个任务的指针,但我无法将其作为我在不同线程中生成的任务。
那么有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
似乎正确使用std::task_group
可以解决我的问题
std::task_handle
也不会在创建时执行,所以使用它也可以解决我的问题,但它需要自己的队列。