线程的子线程?

时间:2012-12-02 07:58:12

标签: c++ c multithreading performance

假设你有一个多线程程序,每个线程可以从DLL调用一个函数,并且该DLL中的函数将以多线程方式处理数据,一般来说,通过执行是否有任何性能优势/命中这个而不是在DLL单线程中使这些函数?

1 个答案:

答案 0 :(得分:2)

也许,也许不是。这取决于很多事情。

首先,产生新线程非常昂贵,因此并行完成的工作量需要抵消这个成本。

其次,这些线程需要有多余的CPU周期才能实际并行运行,而不是按时间分片到同一个内核上。

最后,线程需要能够使用那些备用CPU周期,而不是花费大部分时间等待彼此。