Например, если в переменной условия заблокировано десять потоков, notify_one()
разблокирует только один поток, а notify_all()
разблокирует их все. В вашем случае вы захотите использовать notify_one()
, чтобы не пробуждать потоки, у которых нет работы, ожидающей их.