gpt4 book ai didi

c++ - 有没有办法在 C++ 中并行循环遍历 vector 的所有元素?

转载 作者:行者123 更新时间:2023-11-28 04:20:00 25 4
gpt4 key购买 nike

我正在使用 C++ 开发电梯模拟器。我有一个类(class)passenger,程序创建了该类(class)的“随机”实例,在建筑物内具有不同的起始楼层和不同的目的地,然后将它们存储在一个 vector 中

vector<passenger> passengers;

我正在研究建筑物中 4 部电梯的调度算法。然而,由于该算法会比较建筑物中的所有 4 部电梯,因此可能无法立即为乘客分配电梯(即不可用空闲电梯或有足够空间与乘客同向运行的电梯) .

问题:

我想不断地将算法同时应用于 vector passengers 的所有元素,并且不能使用传统的 for 循环来实现,因为它可能会卡在中途乘客实例沿着可以分配电梯的 vector 留下等待。

谁知道有没有办法做到这一点?

谢谢。

最佳答案

您可以使用 std::for_each平行ExecutionPolicy .

请注意,如果您需要同步访问元素,并行执行最终可能会比串行执行

关于c++ - 有没有办法在 C++ 中并行循环遍历 vector 的所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55665087/

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