gpt4 book ai didi

c++ - 我应该使用静态工作池还是动态工作池(线程)?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:34:59 26 4
gpt4 key购买 nike

我正在运行一个运行良好的 pthreads 程序,但是我没有看到我期望的加速。我怀疑我花了很多时间创建和销毁我的线程。

我运行的线程永远不会超过我的 CPU。

在 20 分钟的时间里,我创建了大约 5000 个线程。

我的问题是是否值得实现适当的静态工作池,这样我就只会分配静态数量的工作人员?

最佳答案

首先,您应该衡量您的应用将所有时间花在哪里。结果是每秒大约创建 4 或 5 个线程,这是很多但可能不是您花费所有时间的地方。

也就是说,但是,如果您总是将自己限制在 N 个线程上,其中 N 是 CPU 的数量,那么您可能应该预先创建 N 个线程并使用某种算法安排工作在每个线程上运行感知您正在进行的计算。

关于c++ - 我应该使用静态工作池还是动态工作池(线程)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6171513/

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