use*_*369 3 c++ performance multithreading pthreads condition-variable
我正在编写 C++ ThreadPool 植入并在我的工作人员的主函数中使用 pthread_cond_wait。我想知道从发出条件变量信号到等待它的线程/线程唤醒需要多长时间。你知道我如何估计/计算这个时间吗?
非常感谢。
这取决于上下文切换的成本
Linux 最佳情况,i7,1100ns,线程在同一进程中,与上次运行的内核相同,作为最后一个线程运行,无负载,工作集 1 字节。
糟糕的情况,从缓存中刷新,不同的内核,不同的进程,只需要 30 微秒的 CPU 开销。
成本去哪儿了: