在C++中,notify_all()是一个成员函数,通常与std::condition_variable一起使用,用于通知等待中的线程。正确使用notify_all的一般步骤如下:
std::mutex mtx; std::condition_variable cv; std::unique_lock<std::mutex> lock(mtx); cv.wait(lock); cv.notify_all(); 需要注意的是,在调用notify_all()之前,必须先锁住互斥量,以确保在通知发出后,等待中的线程能够正确被唤醒。另外,也可以使用notify_one()函数只通知一个等待中的线程。