Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Middle+
7
Что напечатает программа с atomic_bool, изменяемым в отдельном потоке
Компании, где спрашивали:
Датаджайл
Условие задачи
Необходимо предсказать вывод следующей программы. В коде создаётся атомарный булевый флаг, который изначально установлен в false. Затем запускается отдельный поток, где флаг меняется на true. После завершения потока основной поток выводит значение флага в консоль.
# include <iostream>
# include <thread>
# include <atomic>
using namespace std;
int main()
{
atomic_bool flag(false);
std::thread worker([&flag] {
flag = true;
});
worker.join();
cout << flag << std::endl;
return 0;
}
Каким будет результат работы программы?