Читать «Параллельное программирование на С++ в действии. Практика разработки многопоточных программ» онлайн - страница 441
Энтони Уильямс
native_handle_type
— это псевдоним типа, который можно использовать в сочетании с платформенно-зависимыми API.
typedef implementation-defined native_handle_type;
Примечание. Этот псевдоним типа необязателен. Если он определен, то реализация должна предоставить тип, пригодный для использования в сочетании с платформенно-зависимыми API.
STD::THREAD::NATIVE_HANDLE
, ФУНКЦИЯ-ЧЛЕН
Возвращает значение типа native_handle_type
, представляющее поток выполнения, ассоциированный с *this
.
native_handle_type native_handle();
Примечание. Эта функция необязательна. Если она имеется, то возвращаемое значение должно быть пригодно для использования в сочетании с платформенно-зависимыми API.
STD::THREAD
, КОНСТРУКТОР ПО УМОЛЧАНИЮ
Конструирует объект std::thread
, с которым не ассоциирован никакой поток выполнения.
thread() noexcept;
Конструирует экземпляр std::thread
, с которым не ассоциирован никакой поток выполнения.
Для вновь сконструированного объекта x типа std::thread x.get_id()==id()
.
Нет.
STD::THREAD
, КОНСТРУКТОР
Конструирует экземпляр std::thread
, ассоциированный с новым потоком выполнения.
template<typename Callable, typename Args...>
explicit thread(Callable&& func, Args&&... args);
func
и каждый элемент списка args
должен удовлетворять требованиям концепции MoveConstructible
.
Конструирует экземпляр std::thread
и ассоциирует с ним вновь созданный потоком выполнения. Копирует или перемещает аргумент func
и все элементы списка args
во внутреннюю память, где они хранятся на протяжении всего времени жизни потока выполнения. Вызывает INVOKE(copy-of-func, copy-of-args)
в новом потоке выполнения.
Для вновь сконструированного объекта x
типа std::thread x.get_id() != id()
.
Исключение типа std::system_error
, если не удалось запустить новый поток. Любое исключение, возбужденное при копировании func
или args
во внутреннюю память.
Вызов этого конструктора происходит-раньше выполнения переданной функции во вновь созданном потоке выполнения.
STD::THREAD
, ПЕРЕМЕЩАЮЩИЙ КОНСТРУКТОР
Передает владение потоком выполнения от существующего объекта std::thread
вновь созданному.