Daily bite C++. std::this_thread

Добавлено 14 октября 2026 в 14:20

Daily bit(e) C++ 150, инструменты из C++11 для управления текущим потоком.

Daily bit(e) C++

std::this_thread в C++11 – это пространство имен в заголовочном файле <thread>, содержащее функции для получения идентификатора текущего потока и передачи управления другим потокам.

Обратите внимание, что фактическое поведение функций yield, sleep_for и sleep_until во многом зависит от реализации библиотеки потоков и планировщика операционной системы.

#include <thread>
#include <chrono>
#include <iostream>

// вывести идентификатор текущего потока
std::cout << std::this_thread::get_id() << "\n";  

// Уступить выполнение этого потока,
// позволяя выполняться другим потокам
std::this_thread::yield();

using namespace std::chrono;
// Приостановить выполнение этого потока
// как минимум на указанный период времени
std::this_thread::sleep_for(240ms);
// Приостановить выполнение этого потока
// как минимум до указанного момента времени
std::this_thread::sleep_until(steady_clock::now() + 1s);

Пример на Compiler Explorer

Теги

C++ / CppDaily bit(e) C++МногопоточностьПрограммирование