Поделиться через


<future>

Включите стандартный заголовок <future> для определения классы-шаблоны и поддерживающие шаблоны, которые упрощают для выполнения функции - допустим в отдельных потоках и извлечь его результат.Результат любого значения, возвращаемого функцией или исключения, выдается функцией, но не уловлен в функции.

Этот заголовок используется среда выполнения с параллелизмом (ConcRT), чтобы можно было использовать его вместе с другими механизмами ConcRT.Дополнительные сведения о ConcRT см. в разделе Среда выполнения с параллелизмом.

#include <future>

Заметки

ПримечаниеПримечание

В коде, компилироваться с помощью /clr или /clr:pure, этот заголовок блокируется.

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

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

Асинхронный поставщик или асинхронный возвращает объект, который не имеет связанного с ним асинхронное состояние пустыми.

Связанное асинхронное состояние готово, только если его асинхронный поставщик хранил возвращаемое значение или хранящихся исключение.

Шаблонная функция async и шаблонные классы promise и packaged_task асинхронных поставщиков.Шаблонные классы future и shared_future описаны асинхронные возвращают объекты.

Каждый из шаблонных классов promise, future и shared_future имеет специализацию для типа void и частично специализацию для хранения и извлечения значения по ссылке.Эти специализации отличаются от первичного шаблона только в сигнатурах и семантике функций, которые хранят и извлекает возвращаемое значение.

Члены

Hh920535.collapse_all(ru-ru,VS.110).gifКлассы

Имя

Описание

будущий класс

Описывает асинхронный возвращенный объект.

класс future_error

Описание объекта исключения, которое может быть возникает методами типов, управляющие объекты future.

класс packaged_task

Описание поставщика, программа-оболочка асинхронного вызова, а сигнатура вызова Ty(ArgTypes...).Связанным асинхронное состояние содержит копию его можно вызвать объекта помимо потенциальному результату.

promise Class

Описывает асинхронный поставщика.

класс shared_future

Описывает асинхронный возвращенный объект.В отличие от объекта future, асинхронного поставщик можно связать с любым числом объектов shared_future.

Hh920535.collapse_all(ru-ru,VS.110).gifСтруктуры

Имя

Описание

структура is_error_code_enum

Специализация, указывающую, что future_errc используется для хранения error_code.

структура uses_allocator

Специализация, всегда содержит значение true.

Hh920535.collapse_all(ru-ru,VS.110).gifФункции

Имя

Описание

async - функция

Представляет асинхронный поставщика.

future_category функция

Возвращает ссылку на объект error_category, который характеризует ошибки, связанные с объектами future.

функция make_error_code

Создает объект error_code, содержащий объект error_category, который характеризует ошибки future.

функция make_error_condition

Создает объект error_condition, содержащий объект error_category, который характеризует ошибки future.

функция обмена (<future>)

Меняет местами. асинхронное состояние одного объекта promise с одним из других.

Hh920535.collapse_all(ru-ru,VS.110).gifПеречисления

Имя

Описание

перечисление future_errc

Символические имена предоставляет для ошибок, которые предоставляются классом future_error.

перечисление future_status

Символические имена предоставляет по причинам, синхронизированная продолжительность может возвращать.

launch Enumeration

Представляет тип битовой маски, который описывает возможные режимы для функции шаблона async.

См. также

Другие ресурсы

Файлы заголовков