IAsyncInfo Интерфейс

Определение

Поддерживает асинхронные действия и операции. IAsyncInfo — это базовый интерфейс для IAsyncAction, IAsyncActionWithProgress TProgress<>, IAsyncOperation<TResult> и IAsyncOperationWithProgress<TResult,TProgress>, каждый из которых поддерживает сочетания типа возвращаемого значения и хода выполнения для асинхронного метода.

public interface class IAsyncInfo
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(54, 0, 0, 192, 0, 0, 0, 0, 0, 0, 70)]
struct IAsyncInfo
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(54, 0, 0, 192, 0, 0, 0, 0, 0, 0, 70)]
public interface IAsyncInfo
Public Interface IAsyncInfo
Производный
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (появилось в v1.0)

Комментарии

IAsyncInfo — это наследуемый интерфейс для каждого из 4 интерфейсов среда выполнения Windows, используемых для поддержки асинхронных методов. Эти особые значения приведены ниже.

При использовании асинхронных методов в коде приложения вы обычно не видите ни один из этих интерфейсов в качестве возвращаемого значения. Это связано с тем, что вы почти всегда используете синтаксис ожидания для конкретного языка, который обрабатывает интерфейсы внутренне. Дополнительные сведения см. в статье Асинхронное программирование или одно из руководств по среда выполнения Windows асинхронного программирования (вызов асинхронных API в C# или Visual Basic, C++, JavaScript).

Для большинства кодов приложений IAsyncInfo редко используется в качестве API, даже если вы не используете ожидающий синтаксис. Каждый из языков имеет точки расширения, которые, как правило, проще использовать, чем интерфейс Среды выполнения WindowsIAsyncInfo. JavaScript имеет синтаксис then/done . В .NET есть метод расширения AsTask , и после преобразования IAsyncAction в задачу будет проще отменить, получить уведомления о завершении и т. д. Для C++/CX вызовы можно упаковать с помощью среды выполнения с параллелизмом. Иными словами, IAsyncInfo — это инфраструктура уровня среды выполнения, которую каждый язык использует в качестве платформы для поддержки ожидающего синтаксиса по-своему.

Если вы реализуете настраиваемое действие или пользовательскую операцию (расширенный сценарий), не реализуйте IAsyncAction напрямую. Реализуйте один из 4 перечисленных ранее интерфейсов.

Свойства

ErrorCode

Возвращает строку, описывающую условие ошибки асинхронной операции.

Id

Возвращает дескриптор асинхронной операции.

Status

Возвращает значение, указывающее состояние асинхронной операции.

Методы

Cancel()

Отменяет асинхронную операцию.

Close()

Закрывает асинхронную операцию.

Применяется к

См. также раздел