Condividi tramite


TaskToAsyncResult.Begin(Task, AsyncCallback, Object) Metodo

Definizione

Crea un nuovo IAsyncResult oggetto dall'oggetto specificato Task, richiamando facoltativamente callback quando l'attività è stata completata.

public:
 static IAsyncResult ^ Begin(System::Threading::Tasks::Task ^ task, AsyncCallback ^ callback, System::Object ^ state);
public static IAsyncResult Begin (System.Threading.Tasks.Task task, AsyncCallback? callback, object? state);
static member Begin : System.Threading.Tasks.Task * AsyncCallback * obj -> IAsyncResult
Public Shared Function Begin (task As Task, callback As AsyncCallback, state As Object) As IAsyncResult

Parametri

task
Task

Oggetto Task da eseguire a capo in un IAsyncResultoggetto .

callback
AsyncCallback

Callback da richiamare al taskcompletamento dell'operazione. Se null, non verrà richiamato alcun callback.

state
Object

Stato da archiviare in IAsyncResult.

Restituisce

Oggetto IAsyncResult per rappresentare l'operazione asincrona dell'attività. Questa istanza verrà passata anche a callback quando viene richiamata.

Eccezioni

task è null.

Commenti

In combinazione con i End(IAsyncResult) metodi o End<TResult>(IAsyncResult) , questo metodo può essere usato per implementare il modello Begin/End (noto anche come modello di programmazione asincrona o APM). È consigliabile non esporre questo modello nel nuovo codice; i metodi su sono destinati solo a implementare tali metodi TaskToAsyncResult Begin/End quando devono essere esposti, ad esempio perché una classe di base fornisce metodi virtuali per il modello o quando sono già stati esposti e devono rimanere per la compatibilità. Questi metodi consentono di implementare tutta la logica asincrona principale tramite Tasks e quindi implementare facilmente i metodi Begin/End intorno a tale funzionalità.

Si applica a