JoinableTaskFactory Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Factory per l'avvio di attività asincrone che possono ridurre i deadlock quando le attività richiedono il thread principale di un'applicazione e il thread principale potrebbe bloccarsi al completamento di un'attività.
public ref class JoinableTaskFactory
[Windows::Foundation::Metadata::WebHostHidden]
class JoinableTaskFactory
public class JoinableTaskFactory
type JoinableTaskFactory = class
Public Class JoinableTaskFactory
- Ereditarietà
-
JoinableTaskFactory
- Derivato
Commenti
Per altri commenti completi, vedere .JoinableTaskContext
Costruttori
| Nome | Descrizione |
|---|---|
| JoinableTaskFactory(JoinableTaskCollection) |
Inizializza una nuova istanza della JoinableTaskFactory classe che aggiunge tutti i processi generati alla raccolta specificata. |
| JoinableTaskFactory(JoinableTaskContext) |
Inizializza una nuova istanza della classe JoinableTaskFactory. |
Proprietà
| Nome | Descrizione |
|---|---|
| Context |
Ottiene il contesto dell'attività joinable a cui appartiene questa factory. |
| HangDetectionTimeout |
Ottiene o imposta il timeout dopo il quale nessuna attività durante il blocco sincrono suggerisce che si è verificato un blocco. |
| UnderlyingSynchronizationContext |
Ottiene l'oggetto sottostante SynchronizationContext che controlla il thread principale nell'host. |
Metodi
| Nome | Descrizione |
|---|---|
| Add(JoinableTask) |
Aggiunge l'attività joinable specificata alla raccolta applicabile. |
| DisableProcessing() |
Impedisce l'esecuzione delle pompe di messaggi filtrate durante le attese sincrone per l'ambiente JoinableTask. |
| IsWaitingOnLongRunningTask() |
Controllare se l'oggetto joinableTask corrente è in attesa di un'attività a esecuzione prolungata. |
| OnTransitionedToMainThread(JoinableTask, Boolean) |
Generato ogni volta che un'attività joinable ha completato una transizione al thread principale. |
| OnTransitioningToMainThread(JoinableTask) |
Generato quando un'attività joinable ha richiesto una transizione al thread principale. |
| PostToUnderlyingSynchronizationContext(SendOrPostCallback, Object) |
Invia un messaggio all'oggetto SynchronizationContext sottostante specificato per l'elaborazione quando il thread principale è disponibile gratuitamente. |
| Run(Func<Task>, JoinableTaskCreationOptions) |
Esegue il metodo asincrono specificato fino al completamento durante il blocco sincrono del thread chiamante. |
| Run(Func<Task>) |
Esegue il metodo asincrono specificato fino al completamento durante il blocco sincrono del thread chiamante. |
| Run<T>(Func<Task<T>>, JoinableTaskCreationOptions) |
Esegue il metodo asincrono specificato fino al completamento durante il blocco sincrono del thread chiamante. |
| Run<T>(Func<Task<T>>) |
Esegue il metodo asincrono specificato fino al completamento durante il blocco sincrono del thread chiamante. |
| RunAsync(Func<Task>, JoinableTaskCreationOptions) |
Richiama un delegato asincrono sul thread del chiamante e restituisce al chiamante quando il metodo asincrono restituisce. Il delegato asincrono viene richiamato in modo da attenuare i deadlock nel caso in cui il metodo asincrono richieda il thread principale mentre il thread principale è bloccato in attesa del completamento del metodo asincrono. |
| RunAsync(Func<Task>, String, JoinableTaskCreationOptions) |
Factory per l'avvio di attività asincrone che possono ridurre i deadlock quando le attività richiedono il thread principale di un'applicazione e il thread principale potrebbe bloccarsi al completamento di un'attività. |
| RunAsync(Func<Task>) |
Richiama un delegato asincrono sul thread del chiamante e restituisce al chiamante quando il metodo asincrono restituisce. Il delegato asincrono viene richiamato in modo da attenuare i deadlock nel caso in cui il metodo asincrono richieda il thread principale mentre il thread principale è bloccato in attesa del completamento del metodo asincrono. |
| RunAsync<T>(Func<Task<T>>, JoinableTaskCreationOptions) |
Richiama un delegato asincrono sul thread del chiamante e restituisce al chiamante quando il metodo asincrono restituisce. Il delegato asincrono viene richiamato in modo da attenuare i deadlock nel caso in cui il metodo asincrono richieda il thread principale mentre il thread principale è bloccato in attesa del completamento del metodo asincrono. |
| RunAsync<T>(Func<Task<T>>, String, JoinableTaskCreationOptions) |
Factory per l'avvio di attività asincrone che possono ridurre i deadlock quando le attività richiedono il thread principale di un'applicazione e il thread principale potrebbe bloccarsi al completamento di un'attività. |
| RunAsync<T>(Func<Task<T>>) |
Richiama un delegato asincrono sul thread del chiamante e restituisce al chiamante quando il metodo asincrono restituisce. Il delegato asincrono viene richiamato in modo da attenuare i deadlock nel caso in cui il metodo asincrono richieda il thread principale mentre il thread principale è bloccato in attesa del completamento del metodo asincrono. |
| SwitchToMainThreadAsync(Boolean, CancellationToken) |
Ottiene un oggetto awaitable le cui continuazioni vengono eseguite nel contesto di sincronizzazione con cui è stata inizializzata questa istanza, in modo da attenuare sia i deadlock che la reentrancy. |
| SwitchToMainThreadAsync(CancellationToken) |
Ottiene un oggetto awaitable le cui continuazioni vengono eseguite sul thread principale, in modo da attenuare sia i deadlock che la reentrancy. |
| WaitSynchronously(Task) |
Blocca in modo sincrono il thread chiamante per il completamento dell'attività specificata. Se è in esecuzione nel thread principale, qualsiasi pompa di messaggi applicabile viene eliminata durante la sospensione del thread. |
| WaitSynchronouslyCore(Task) |
Blocca in modo sincrono il thread chiamante per il completamento dell'attività specificata. |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| Run(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona annullabile. Se l'operazione richiede troppo tempo, viene visualizzata una finestra di dialogo di attesa facoltativamente annullabile. |
| Run(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona. Se l'operazione richiede troppo tempo, viene visualizzata una finestra di dialogo di attesa facoltativamente annullabile. |
| Run(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona. L'annullamento viene offerto all'utente. |
| Run(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona. Nessun annullamento viene offerto all'utente. |
| Run<T>(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task<T>>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona annullabile. Se l'operazione richiede troppo tempo, viene visualizzata una finestra di dialogo di attesa facoltativamente annullabile. |
| Run<T>(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task<T>>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona. Se l'operazione richiede troppo tempo, viene visualizzata una finestra di dialogo di attesa facoltativamente annullabile. |
| Run<T>(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task<T>>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona. L'annullamento viene offerto all'utente. |
| Run<T>(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task<T>>, Nullable<TimeSpan>) |
Blocca il thread chiamante (UI) fino al completamento di un'operazione asincrona. Nessun annullamento viene offerto all'utente. |
| RunAsync(JoinableTaskFactory, VsTaskRunContext, Func<Task>) |
Esegue il wrapping della chiamata di un metodo asincrono in modo che possa essere eseguito in modo asincrono, ma potrebbe essere potenzialmente completato in modo sincrono (in attesa) in futuro. |
| RunAsync<T>(JoinableTaskFactory, VsTaskRunContext, Func<Task<T>>) |
Esegue il wrapping della chiamata di un metodo asincrono in modo che possa essere eseguito in modo asincrono, ma potrebbe essere potenzialmente completato in modo sincrono (in attesa) in futuro. |
| RunAsyncAsVsTask<T>(JoinableTaskFactory, VsTaskRunContext, Func<CancellationToken,Task<T>>) |
Crea un IVsTask per tenere traccia di un'operazione asincrona annullabile. |
| StartOnIdle(JoinableTaskFactory, Action, VsTaskRunContext) |
Pianifica un delegato per l'esecuzione in background nel thread dell'interfaccia utente senza ereditare alcuna attestazione al thread dell'interfaccia utente dal chiamante. |
| StartOnIdle(JoinableTaskFactory, Func<Task>, VsTaskRunContext) |
Pianifica un delegato per l'esecuzione in background nel thread dell'interfaccia utente senza ereditare alcuna attestazione al thread dell'interfaccia utente dal chiamante. |
| WithPriority(JoinableTaskFactory, Dispatcher, DispatcherPriority) |
Crea un oggetto JoinableTaskFactory che pianifica il lavoro con l'oggetto e DispatcherPriorityspecificatoDispatcher. |
| WithPriority(JoinableTaskFactory, VsTaskRunContext) |
Crea un oggetto JoinableTaskFactory che pianifica il lavoro con la priorità del thread dell'interfaccia utente specificata Visual Studio. |
Si applica a
Thread safety
Questo tipo è thread-safe per tutti i membri.