gpt4 book ai didi

c++ - 从 C++11 中的多个线程获取值,而无需等待任何给定线程完成执行

转载 作者:搜寻专家 更新时间:2023-10-31 01:33:22 25 4
gpt4 key购买 nike

<分区>

我想运行一系列 C++11 线程 (std::thread),这样每个线程都可以向创建它的进程返回一个值。

我知道如何做到这一点 here .

但是,根据 this,当使用 std::future 时,执行将被阻塞,直到值准备好。当我有多个线程时,我想在每个线程可用时使用它们的返回值,而不是按照从 future 获取值的顺序确定的顺序访问它们。

例如,如果我有线程 t1、t2 和 t3,我得到它们的结果为

t1.get();
t2.get();
t3.get();

然后,即使 t2 和 t3 已完成其任务,我也可能会等到 t1 准备好结果。

有没有办法克服这个问题?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com