JoinableTaskFactory Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Fabryka uruchamiania zadań asynchronicznych, które mogą ograniczyć zakleszczenia, gdy zadania wymagają głównego wątku aplikacji, a wątek Główny może blokować się po zakończeniu zadania.
public ref class JoinableTaskFactory
[Windows::Foundation::Metadata::WebHostHidden]
class JoinableTaskFactory
public class JoinableTaskFactory
type JoinableTaskFactory = class
Public Class JoinableTaskFactory
- Dziedziczenie
-
JoinableTaskFactory
- Pochodne
Uwagi
Aby uzyskać więcej pełnych komentarzy, zobacz .JoinableTaskContext
Konstruktory
| Nazwa | Opis |
|---|---|
| JoinableTaskFactory(JoinableTaskCollection) |
Inicjuje JoinableTaskFactory nowe wystąpienie klasy, które dodaje wszystkie wygenerowane zadania do określonej kolekcji. |
| JoinableTaskFactory(JoinableTaskContext) |
Inicjuje nowe wystąpienie klasy JoinableTaskFactory. |
Właściwości
| Nazwa | Opis |
|---|---|
| Context |
Pobiera kontekst zadania sprzężonego, do którego należy ta fabryka. |
| HangDetectionTimeout |
Pobiera lub ustawia limit czasu, po którym żadne działanie podczas synchronicznego blokowania sugeruje, że wystąpił zawieszenie. |
| UnderlyingSynchronizationContext |
Pobiera element źródłowy SynchronizationContext , który kontroluje główny wątek na hoście. |
Metody
| Nazwa | Opis |
|---|---|
| Add(JoinableTask) |
Dodaje określone zadanie sprzężone do odpowiedniej kolekcji. |
| DisableProcessing() |
Zapobiega uruchamianiu filtrowanych pomp komunikatów podczas synchronicznych oczekiwań otoczenia JoinableTask. |
| IsWaitingOnLongRunningTask() |
Sprawdź, czy bieżący element joinableTask czeka na długotrwałe zadanie. |
| OnTransitionedToMainThread(JoinableTask, Boolean) |
Wywoływane za każdym razem, gdy zadanie możliwe do sprzężenia zakończyło przejście do głównego wątku. |
| OnTransitioningToMainThread(JoinableTask) |
Zgłaszane, gdy zadanie możliwe do sprzężenia zażądało przejścia do głównego wątku. |
| PostToUnderlyingSynchronizationContext(SendOrPostCallback, Object) |
Publikuje komunikat do określonego bazowego elementu SynchronizationContext do przetwarzania, gdy główny wątek jest dostępny bezpłatnie. |
| Run(Func<Task>, JoinableTaskCreationOptions) |
Uruchamia określoną metodę asynchroniczną w celu ukończenia, a synchronicznie blokuje wątek wywołujący. |
| Run(Func<Task>) |
Uruchamia określoną metodę asynchroniczną w celu ukończenia, a synchronicznie blokuje wątek wywołujący. |
| Run<T>(Func<Task<T>>, JoinableTaskCreationOptions) |
Uruchamia określoną metodę asynchroniczną w celu ukończenia, a synchronicznie blokuje wątek wywołujący. |
| Run<T>(Func<Task<T>>) |
Uruchamia określoną metodę asynchroniczną w celu ukończenia, a synchronicznie blokuje wątek wywołujący. |
| RunAsync(Func<Task>, JoinableTaskCreationOptions) |
Wywołuje delegata asynchronicznego w wątku wywołującego i zwraca element wywołujący, gdy metoda asynchronizatora zwraca wartość . Delegat asynchroniczny jest wywoływany w taki sposób, aby zapobiec zakleszczeniom w przypadku, gdy metoda asynchronikowa wymaga głównego wątku, podczas gdy główny wątek jest zablokowany czekający na ukończenie metody asynchronicznej. |
| RunAsync(Func<Task>, String, JoinableTaskCreationOptions) |
Fabryka uruchamiania zadań asynchronicznych, które mogą ograniczyć zakleszczenia, gdy zadania wymagają głównego wątku aplikacji, a wątek Główny może blokować się po zakończeniu zadania. |
| RunAsync(Func<Task>) |
Wywołuje delegata asynchronicznego w wątku wywołującego i zwraca element wywołujący, gdy metoda asynchronizatora zwraca wartość . Delegat asynchroniczny jest wywoływany w taki sposób, aby zapobiec zakleszczeniom w przypadku, gdy metoda asynchronikowa wymaga głównego wątku, podczas gdy główny wątek jest zablokowany czekający na ukończenie metody asynchronicznej. |
| RunAsync<T>(Func<Task<T>>, JoinableTaskCreationOptions) |
Wywołuje delegata asynchronicznego w wątku wywołującego i zwraca element wywołujący, gdy metoda asynchronizatora zwraca wartość . Delegat asynchroniczny jest wywoływany w taki sposób, aby zapobiec zakleszczeniom w przypadku, gdy metoda asynchronikowa wymaga głównego wątku, podczas gdy główny wątek jest zablokowany czekający na ukończenie metody asynchronicznej. |
| RunAsync<T>(Func<Task<T>>, String, JoinableTaskCreationOptions) |
Fabryka uruchamiania zadań asynchronicznych, które mogą ograniczyć zakleszczenia, gdy zadania wymagają głównego wątku aplikacji, a wątek Główny może blokować się po zakończeniu zadania. |
| RunAsync<T>(Func<Task<T>>) |
Wywołuje delegata asynchronicznego w wątku wywołującego i zwraca element wywołujący, gdy metoda asynchronizatora zwraca wartość . Delegat asynchroniczny jest wywoływany w taki sposób, aby zapobiec zakleszczeniom w przypadku, gdy metoda asynchronikowa wymaga głównego wątku, podczas gdy główny wątek jest zablokowany czekający na ukończenie metody asynchronicznej. |
| SwitchToMainThreadAsync(Boolean, CancellationToken) |
Pobiera oczekiwany element, którego kontynuacje są wykonywane w kontekście synchronizacji, z którym zainicjowano to wystąpienie, w taki sposób, aby ograniczyć zarówno zakleszczenia, jak i ponownego uruchomienia. |
| SwitchToMainThreadAsync(CancellationToken) |
Dostaje oczekiwany, którego kontynuacje są wykonywane w głównym wątku, w taki sposób, aby ograniczyć zarówno zakleszczenia, jak i ponownego uruchamiania. |
| WaitSynchronously(Task) |
Synchronicznie blokuje wątek wywołujący do ukończenia określonego zadania. W przypadku uruchomienia w wątku głównym wszelkie odpowiednie pompy komunikatów są pomijane podczas uśpienia wątku. |
| WaitSynchronouslyCore(Task) |
Synchronicznie blokuje wątek wywołujący do ukończenia określonego zadania. |
Metody rozszerzania
| Nazwa | Opis |
|---|---|
| Run(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task>, Nullable<TimeSpan>) |
Blokuje wątek wywoływania (UI) do momentu zakończenia operacji anulowania asynchronicznych. Opcjonalne okno dialogowe oczekiwania można anulować, jeśli operacja trwa zbyt długo. |
| Run(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task>, Nullable<TimeSpan>) |
Blokuje wątek wywołujący (UI) do momentu zakończenia operacji asynchronicznych. Opcjonalne okno dialogowe oczekiwania można anulować, jeśli operacja trwa zbyt długo. |
| Run(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task>, Nullable<TimeSpan>) |
Blokuje wątek wywołujący (UI) do momentu zakończenia operacji asynchronicznych. Anulowanie jest oferowane użytkownikowi. |
| Run(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task>, Nullable<TimeSpan>) |
Blokuje wątek wywołujący (UI) do momentu zakończenia operacji asynchronicznych. Użytkownik nie oferuje anulowania. |
| Run<T>(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task<T>>, Nullable<TimeSpan>) |
Blokuje wątek wywoływania (UI) do momentu zakończenia operacji anulowania asynchronicznych. Opcjonalne okno dialogowe oczekiwania można anulować, jeśli operacja trwa zbyt długo. |
| Run<T>(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task<T>>, Nullable<TimeSpan>) |
Blokuje wątek wywołujący (UI) do momentu zakończenia operacji asynchronicznych. Opcjonalne okno dialogowe oczekiwania można anulować, jeśli operacja trwa zbyt długo. |
| Run<T>(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task<T>>, Nullable<TimeSpan>) |
Blokuje wątek wywołujący (UI) do momentu zakończenia operacji asynchronicznych. Anulowanie jest oferowane użytkownikowi. |
| Run<T>(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task<T>>, Nullable<TimeSpan>) |
Blokuje wątek wywołujący (UI) do momentu zakończenia operacji asynchronicznych. Użytkownik nie oferuje anulowania. |
| RunAsync(JoinableTaskFactory, VsTaskRunContext, Func<Task>) |
Opakowuje wywołanie metody asynchronicznej, tak aby mogło zostać wykonane asynchronicznie, ale może być potencjalnie synchronicznie ukończone (czekane) w przyszłości. |
| RunAsync<T>(JoinableTaskFactory, VsTaskRunContext, Func<Task<T>>) |
Opakowuje wywołanie metody asynchronicznej, tak aby mogło zostać wykonane asynchronicznie, ale może być potencjalnie synchronicznie ukończone (czekane) w przyszłości. |
| RunAsyncAsVsTask<T>(JoinableTaskFactory, VsTaskRunContext, Func<CancellationToken,Task<T>>) |
Tworzy element IVsTask w celu śledzenia operacji async z możliwością anulowania. |
| StartOnIdle(JoinableTaskFactory, Action, VsTaskRunContext) |
Planuje delegata do wykonywania w tle w wątku interfejsu użytkownika bez dziedziczenia oświadczeń do wątku interfejsu użytkownika z jego obiektu wywołującego. |
| StartOnIdle(JoinableTaskFactory, Func<Task>, VsTaskRunContext) |
Planuje delegata do wykonywania w tle w wątku interfejsu użytkownika bez dziedziczenia oświadczeń do wątku interfejsu użytkownika z jego obiektu wywołującego. |
| WithPriority(JoinableTaskFactory, Dispatcher, DispatcherPriority) |
Tworzy obiekt, który JoinableTaskFactory planuje pracę z określonymi Dispatcher elementami i DispatcherPriority. |
| WithPriority(JoinableTaskFactory, VsTaskRunContext) |
Tworzy obiekt, który JoinableTaskFactory planuje pracę z określonym priorytetem wątku interfejsu użytkownika Visual Studio. |
Dotyczy
Bezpieczeństwo wątkowe
Ten typ jest bezpieczny wątkowo dla wszystkich elementów członkowskich.