Пространства имён
Варианты
Действия

Библиотека поддержки потоков

Материал из cppreference.com
< cpp


 
 
Библиотека поддержки потоков
Потоки
Оригинал:
Threads
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
thread(C++11)
this_thread имен
Оригинал:
this_thread namespace
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
get_id(C++11)
yield(C++11)
sleep_for(C++11)
sleep_until(C++11)
Взаимное исключение
Оригинал:
Mutual exclusion
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
mutex(C++11)
timed_mutex(C++11)
Generic управления замком
Оригинал:
Generic lock management
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
lock_guard(C++11)
unique_lock(C++11)
defer_lock_t
try_to_lock_t
adopt_lock_t
(C++11)
(C++11)
(C++11)
lock(C++11)
try_lock(C++11)
defer_lock
try_to_lock
adopt_lock
(C++11)
(C++11)
(C++11)
Условия переменных
Оригинал:
Condition variables
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
condition_variable(C++11)
condition_variable_any(C++11)
notify_all_at_thread_exit(C++11)
cv_status(C++11)
Futures
Оригинал:
Futures
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
promise(C++11)
future(C++11)
shared_future(C++11)
packaged_task(C++11)
async(C++11)
launch(C++11)
future_status(C++11)
future_error(C++11)
future_category(C++11)
future_errc(C++11)
 
В C++ имеется поддержка потоков, взаимных исключений (мьютексов), условных переменных и futures.
Оригинал:
C++ includes built-in support for threads, mutual exclusion, condition variables, and futures.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

Содержание

[править] Потоки

Потоки позволяют программам выполняться на нескольких ядрах процессора.

Заголовочный файл <thread>
(C++11)
управляет отдельный поток
Оригинал:
manages a separate thread
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
Functions managing the current thread
Defined in namespace this_thread
(C++11)
suggests that the implementation reschedule execution of threads
(функция) [edit]
(C++11)
возвращает идентификатор потока из текущего потока
Оригинал:
returns the thread id of the current thread
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
(C++11)
останавливает выполнение текущего потока в течение указанного периода времени
Оригинал:
stops the execution of the current thread for a specified time duration
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
stops the execution of the current thread until a specified time point
(функция) [edit]

[править] Взаимные исключения (мьютексы)

Алгоритмы взаимных исключений предотвращают одновременный доступ нескольких потоков к разделяемым ресурсам. Это позволяет исключить гонку данных и обеспечить синхронизацию между потоками.

Заголовочный файл <mutex>
(C++11)
предоставляет базовые средства взаимного отчуждения
Оригинал:
provides basic mutual exclusion facility
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
обеспечивает взаимное исключение объекта, который реализует блокировки с тайм-аут
Оригинал:
provides mutual exclusion facility which implements locking with a timeout
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
обеспечивает взаимное исключение объекта, который может быть заблокирован рекурсивно тем же потоком
Оригинал:
provides mutual exclusion facility which can be locked recursively by the same thread
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
обеспечивает взаимное исключение объекта, который может быть заблокирован recursively
тем же потоком и инвентарь блокировки с тайм-аут
Оригинал:
provides mutual exclusion facility which can be locked recursively
by the same thread and implements locking with a timeout
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
Основное управление мьютексами
реализует строго сферы на основе оболочки мьютекс собственности
Оригинал:
implements a strictly scope-based mutex ownership wrapper
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
реализует подвижного мьютекс собственности обертку
Оригинал:
implements movable mutex ownership wrapper
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
тип тега используется для указания замок стратегии
Оригинал:
tag type used to specify locking strategy
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
Тег константы используются для определения замок стратегии
Оригинал:
tag constants used to specify locking strategy
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(константа) [edit]
Основные алгоритмы блокировки
(C++11)
Попытки получить право собственности мьютексов через неоднократные призывы к try_lock
Оригинал:
attempts to obtain ownership of mutexes via repeated calls to try_lock
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
(C++11)
Замки указанных мьютексы, блоки, если таковые пока нет
Оригинал:
locks specified mutexes, blocks if any are unavailable
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
Однократный вызов
(C++11)
вспомогательный объект, чтобы убедиться, что call_once вызывает функцию только один раз
Оригинал:
helper object to ensure that call_once invokes the function only once
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
(C++11)
вызывает функцию только один раз, даже если вызывать из нескольких потоков
Оригинал:
invokes a function only once even if called from multiple threads
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]

[править] Условные переменные

Условная переменная - это примитив синхронизации, который позволяет потокам общаться друг с другом. Это позволяет нескольким потокам ждать (возможно с таймером) сообщения от другого потока о том, что они могут продолжить свою работу. Условные переменные всегда ассоциированы с мьютексами.

Заголовочный файл <condition_variable>
provides a condition variable associated with a std::unique_lock
(класс)
provides a condition variable associated with any lock type
(класс)
schedules a call to notify_all to be invoked when this thread is completely finished
(функция)
(C++11)
lists the possible results of timed waits on condition variables
(перечисление)

[править] Futures

The standard library provides facilities to obtain values that are returned and to catch exceptions that are thrown by asynchronous tasks (i.e. functions launched in separate threads). These values are communicated in a shared state, in which the asynchronous task may write its return value or store an exception, and which may be examined, waited for, and otherwise manipulated by other threads that hold instances of std::future or std::shared_future that reference that shared state.

Заголовочный файл <future>
(C++11)
сохраняет значение для асинхронного поиска
Оригинал:
stores a value for asynchronous retrieval
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
Пакеты функции для хранения возвращаемого значения для асинхронных поиска
Оригинал:
packages a function to store its return value for asynchronous retrieval
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
(C++11)
ожидает значение, которое устанавливается в асинхронном режиме
Оригинал:
waits for a value that is set asynchronously
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
ждет значения (возможно, ссылаются другие фьючерсы), который устанавливается в асинхронном режиме
Оригинал:
waits for a value (possibly referenced by other futures) that is set asynchronously
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
(C++11)
запускает функцию асинхронно (возможно, в новом потоке) и возвращает std::future, который будет содержать результат
Оригинал:
runs a function asynchronously (potentially in a new thread) and returns a std::future that will hold the result
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
(C++11)
определяет запуск политику std::async
Оригинал:
specifies the launch policy for std::async
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(перечисление) [edit]
определяет результаты своевременной ждет осуществляется на std::future и std::shared_future
Оригинал:
specifies the results of timed waits performed on std::future and std::shared_future
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(перечисление) [edit]
Future errors
сообщает об ошибке, связанной с фьючерсами или обещания
Оригинал:
reports an error related to futures or promises
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
определяет будущее категорию ошибки
Оригинал:
identifies the future error category
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
определяет будущее кодов ошибок
Оригинал:
identifies the future error codes
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(перечисление) [edit]