以下推理在标准C++11和一般情况下都是正确的吗?
当实现线程池时,通常不希望忙碌地循环那些没有工作要做的线程。因此,需要某种std::condition_variable。因此,需要某种std::mutex。因此,不可能拥有一个无锁线程池(不会忙碌循环)。
或者我是否错过了一些操作系统机制,使其成为可能?您能否提供额外的推理,表明无锁非忙碌循环线程池不存在?
当实现线程池时,通常不希望忙碌地循环那些没有工作要做的线程。因此,需要某种std::condition_variable。因此,需要某种std::mutex。因此,不可能拥有一个无锁线程池(不会忙碌循环)。
或者我是否错过了一些操作系统机制,使其成为可能?您能否提供额外的推理,表明无锁非忙碌循环线程池不存在?