История изменений
Исправление KennyMinigun, (текущая версия) :
Да, только походу task_status.store() надо тогда делать с std::memory_order_acq_rel. Тогда имеем уверенность, что execute_task() (грубо говоря) не можно перенести после .store() а cv.notify_all() — не можно перенести перед .store().
Исходная версия KennyMinigun, :
Да, только походу task_status.store() надо тогда делать с std::memory_order_acq_rel. Тогда имеем уверенность, что execute_task() (грубо говоря) не может быть после .store() а cv.notify_all() — не может быть перед .store().