IAsyncInfo Interfaccia

Definizione

Supporta azioni e operazioni asincrone. IAsyncInfo è un'interfaccia di base per IAsyncAction, IAsyncActionWithProgress<TProgress>, IAsyncOperation TResult e IAsyncOperationWithProgress<<TResult,TProgress>, ognuna delle quali supporta le combinazioni di tipo restituito e stato per un metodo asincrono.>

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
Derivato
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (è stato introdotto in v1.0)

Commenti

IAsyncInfo è un'interfaccia ereditata per ognuna delle 4 interfacce Windows Runtime usate per il supporto asincrono dei metodi. Si tratta di:

Quando usi metodi asincroni nel codice dell'app, in genere non vedi nessuna di queste interfacce come valore restituito. Questo perché si usa quasi sempre la sintassi awaitable specifica del linguaggio, che gestisce internamente le interfacce. Per altre informazioni, vedere Programmazione asincrona o una delle guide specifiche del linguaggio per Windows Runtime programmazione asincrona (Chiamare API asincrone in C# o Visual Basic, C++, JavaScript).

Per la maggior parte del codice dell'app, è insolito usare IAsyncInfo come API anche se non si usa una sintassi awaitable. Ogni linguaggio include punti di estensione che sono in genere più facili da usare rispetto all'interfaccia Windows RuntimeIAsyncInfo. JavaScript ha la sintassi then/done . .NET ha il metodo di estensione AsTask e, dopo la conversione di IAsyncAction in un'attività, è più facile annullare, ricevere notifiche al completamento e così via. Per C++/CX, è possibile eseguire il wrapping delle chiamate usando il runtime di concorrenza. In altre parole, IAsyncInfo è un'infrastruttura a livello di runtime, che ognuno dei linguaggi usa come framework per supportare la sintassi attendebile in modo personalizzato.

Se si implementa un'azione personalizzata o un'operazione personalizzata (uno scenario avanzato) non implementare direttamente IAsyncAction . Implementare invece una delle 4 interfacce elencate in precedenza.

Proprietà

ErrorCode

Ottiene una stringa che descrive una condizione di errore dell'operazione asincrona.

Id

Ottiene l'handle dell'operazione asincrona.

Status

Ottiene un valore che indica lo stato dell'operazione asincrona.

Metodi

Cancel()

Annulla l'operazione asincrona.

Close()

Chiude l'operazione asincrona.

Si applica a

Vedi anche