Microsoft.VisualStudio.Threading Przestrzeń nazw
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.
Microsoft. Przestrzeń nazw VisualStudio.Threading zawiera interfejsy API do użycia w projektach zestawu SDK Visual Studio. Te interfejsy API należy używać do programowania asynchronicznego w Visual Studio. Dzięki temu można uniknąć zakleszczeń
Ta biblioteka jest oparta na bibliotece równoległej .NET Framework Task Parallel Library (TPL). Aby uzyskać informacje o tej bibliotece, zobacz Task Parallel Library (TPL).
Klasy
| Nazwa | Opis |
|---|---|
| AsyncAutoResetEvent |
Asynchroniczna implementacja elementu AutoResetEvent. |
| AsyncBarrier |
Asynchroniczna bariera, która blokuje sygnalizator, dopóki wszyscy inni uczestnicy nie zasygnalizowali. |
| AsyncCountdownEvent |
Zdarzenie odliczania stylu asynchronicznego. |
| AsyncCrossProcessMutex |
Mutex, który można wprowadzić asynchronicznie. |
| AsyncLazy<T> |
Bezpieczna wątkowo, leniwie i asynchronicznie oceniana fabryka wartości. |
| AsyncLazyInitializer |
Lazily wykonuje delegata, który ma jakiś efekt uboczny (zazwyczaj inicjując coś), taki, że delegat działa co najwyżej raz. |
| AsyncLocal<T> |
Przechowuje odwołania, tak aby były dostępne do pobierania w tym samym kontekście wywołania. |
| AsyncManualResetEvent |
Smak tego ManualResetEvent może być asynchronicznie oczekiwany. |
| AsyncQueue<T> |
Bezpieczne wątkowo, asynchronicznie dequeuable queue. |
| AsyncReaderWriterLock |
Blokada nieblokująca, która umożliwia współbieżny dostęp, wyłączny dostęp lub współbieżność z możliwościami uaktualniania do wyłącznego dostępu. |
| AsyncReaderWriterLock.Awaiter |
Zarządza dostępem asynchronicznym do blokady. |
| AsyncReaderWriterResourceLock<TMoniker,TResource> |
Blokada nieblokująca, która umożliwia współbieżny dostęp, wyłączny dostęp lub współbieżność z możliwościami uaktualniania do wyłącznego dostępu, dzięki czemu specjalne uprawnienia dla zasobów, które muszą być przygotowane na dostęp współbieżny lub wyłączny. |
| AsyncSemaphore |
Asynchroniczna SemaphoreSlim klasa o wygodniejszej składni wydania. |
| AwaitExtensions |
Metody rozszerzeń i oczekiwane dla .NET 4.5. |
| CancellationTokenExtensions |
Rozszerzenia do CancellationToken. |
| DelegatingJoinableTaskFactory |
Klasa bazowa JoinableTaskFactory dla typów pochodnych, które delegują część pracy do istniejącego wystąpienia. |
| DispatcherExtensions |
Metody rozszerzeń dla WPF Dispatcher w celu lepszego współdziałania z elementem JoinableTaskFactory. |
| HangReportContribution |
Współtworzenie zagregowanego raportu zawiesza się. |
| IllegalSemaphoreUsageException |
Wyjątek zgłaszany w przypadku naruszenia umowy.ReentrantSemaphore |
| JoinableTask |
Śledzi operacje asynchroniczne i umożliwia łączenie tych operacji w celu uniknięcia zakleszczeń podczas synchronicznego blokowania wątku głównego na potrzeby ukończenia operacji. |
| JoinableTask<T> |
Śledzi operacje asynchroniczne i umożliwia łączenie tych operacji w celu uniknięcia zakleszczeń podczas synchronicznego blokowania wątku głównego na potrzeby ukończenia operacji. |
| JoinableTaskCollection |
Kolekcja niekompletnych JoinableTask obiektów. |
| JoinableTaskContext |
Typowy kontekst, w którym można tworzyć zadania umożliwiające sprzężenie i wchodzić w interakcje, aby uniknąć zakleszczenia. |
| JoinableTaskContext.HangDetails |
Klasa do hermetyzacji szczegółów możliwego zawieszenia. Wystąpienie tej JoinableTaskContext.HangDetails klasy zostanie przekazane do JoinableTaskContextNode wystąpień, które zarejestrowały powiadomienia o zawieszeniu. |
| JoinableTaskContextException |
Wyjątek zgłaszany, gdy konfiguracja podana dla elementu JoinableTaskContext jest niepoprawna lub metoda wirtualna jest zastępowana w taki sposób, że narusza umowę. Nie należy przechwycić tego wyjątku. Jest zgłaszany, gdy aplikacja ma błąd programowania. |
| JoinableTaskContextNode |
Możliwe do dostosowania źródło JoinableTaskFactory wystąpień. |
| JoinableTaskFactory |
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. |
| NoMessagePumpSyncContext |
Parametr SynchronizationContext, którego synchronicznie blokująca metodę Wait nie zezwala na ponowną reentrancyjność za pośrednictwem pompy komunikatów. |
| NonConcurrentSynchronizationContext |
Element SynchronizationContext , który wykonuje komunikaty w kolejności, w której są odbierane. |
| ProgressWithCompletion<T> |
Mechanizm raportowania postępu przyrostowego, który umożliwia również asynchroniczne oczekiwanie na przetworzenie wszystkich raportów. |
| ReentrantSemaphore |
Semafor JoinableTaskFactoryobsługujący semafor, który umożliwia reentrancy bez korzystania z innego miejsca w semaforze. |
| SemaphoreFaultedException |
Wyjątek zgłaszany, gdy element ReentrantSemaphore jest w stanie błędu. |
| SingleThreadedSynchronizationContext |
Kontekst synchronizacji jednowątkowy, podobnie jak DispatcherSynchronizationContext i WindowsFormsSynchronizationContext. |
| SingleThreadedSynchronizationContext.Frame |
Ramka pompowania komunikatów, która może być wypychana do PushFrame(SingleThreadedSynchronizationContext+Frame) pompowania komunikatów na wątek własny. |
| ThreadingTools |
Metody narzędziowe do pracy między wątkami. |
| TplExtensions |
Rozszerzenia biblioteki równoległej zadań. |
Struktury
| Nazwa | Opis |
|---|---|
| AsyncCrossProcessMutex.LockReleaser |
Wartość zwrócona z EnterAsync(TimeSpan) tej wartości musi zostać usunięta, aby zwolnić mutex. |
| AsyncLazy<T>.RevertRelevance |
Struktura, która ukrywa istotność bloku kodu z określonego AsyncLazy<T> elementu i JoinableTaskContext została utworzona za pomocą polecenia . |
| AsyncReaderWriterLock.Awaitable |
Oczekiwany element, który jest zwracany z asynchronicznych żądań blokady. |
| AsyncReaderWriterLock.LockHandle |
"Publiczna" reprezentacja określonej blokady. |
| AsyncReaderWriterLock.Releaser |
Wartość, której unieszkodliwianie zwalnia blokadę przechowywaną. |
| AsyncReaderWriterLock.Suppression |
Wartość, której usuwanie przywraca widoczność wszelkich blokad przechowywanych przez obiekt wywołujący. |
| AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaitable |
Oczekiwany element, który jest zwracany z asynchronicznych żądań blokady. |
| AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaiter |
Zarządza dostępem asynchronicznym do blokady. |
| AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceReleaser |
Wartość, której unieszkodliwianie zwalnia blokadę przechowywaną. |
| AsyncSemaphore.Releaser |
Wartość, której usuwanie wyzwala uwolnienie blokady. |
| AwaitExtensions.AggregateExceptionAwaitable |
Wynik ConfigureAwaitForAggregateException(Task, Boolean) przygotowania elementu Task do oczekiwania podczas zgłaszania ze wszystkimi wyjątkami wewnętrznymi. |
| AwaitExtensions.AggregateExceptionAwaiter |
Wynik GetAwaiter() przygotowania elementu Task do oczekiwania podczas zgłaszania ze wszystkimi wyjątkami wewnętrznymi. |
| AwaitExtensions.ConfiguredTaskYieldAwaitable |
Oczekiwany element, który zawsze będzie prowadzić wywołanie metody asynchronicznej do uzyskania, a następnie natychmiast wznowić, prawdopodobnie na oryginalnej SynchronizationContextmetodzie . |
| AwaitExtensions.ConfiguredTaskYieldAwaiter |
Obiekt awaiter, który zawsze będzie prowadzić wywołanie metody asynchronicznej, aby uzyskać, a następnie natychmiast wznowić, prawdopodobnie na oryginalnej SynchronizationContextmetodzie . |
| AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable |
Zadanie oczekujące, które ma koligację do wykonywania wywołań zwrotnych synchronicznie na kończeniu stosu wywołań. |
| AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable<T> |
Zadanie oczekujące, które ma koligację do wykonywania wywołań zwrotnych synchronicznie na kończeniu stosu wywołań. |
| AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter |
Element awaiter zadań, który ma koligację do wykonywania wywołań zwrotnych synchronicznie na kończeniu stosu wywołań. |
| AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter<T> |
Element awaiter zadań, który ma koligację do wykonywania wywołań zwrotnych synchronicznie na kończeniu stosu wywołań. |
| AwaitExtensions.SynchronizationContextAwaiter |
Element awaiter zwrócony z .GetAwaiter(SynchronizationContext) |
| AwaitExtensions.TaskSchedulerAwaitable |
Oczekiwany element, który wykonuje kontynuacje określonego harmonogramu zadań. |
| AwaitExtensions.TaskSchedulerAwaiter |
Element awaiter zwrócony z .GetAwaiter(TaskScheduler) |
| CancellationTokenExtensions.CombinedCancellationToken |
Zapewnia dostęp do elementu CancellationToken , który łączy wiele innych tokenów i umożliwia wygodną dyspozycję dowolnego odpowiedniego CancellationTokenSourceelementu . |
| JoinableTaskCollection.JoinRelease |
Wartość, której usuwanie anuluje operację Join() . |
| JoinableTaskContext.RevertRelevance |
Struktura, która czyści statyczne parametry CallContext i SynchronizationContext/thread i przywraca te wartości po usunięciu tej struktury. |
| JoinableTaskFactory.MainThreadAwaitable |
Oczekiwana struktura, która ułatwia asynchroniczne przejście do wątku Głównego. |
| JoinableTaskFactory.MainThreadAwaiter |
Struktura programu awaiter, która ułatwia asynchroniczne przejście do wątku Głównego. |
| JoinableTaskFactory.ProcessingDisabledOperation |
Struktura, której usunięcie przywróci efekt wcześniejszego wywołania metody DisableProcessing(). |
| JoinableTaskInternals.JoinableTaskToken |
Microsoft. Przestrzeń nazw VisualStudio.Threading zawiera interfejsy API do użycia w projektach zestawu SDK Visual Studio. Te interfejsy API należy używać do programowania asynchronicznego w Visual Studio. Dzięki temu można uniknąć zakleszczeń Ta biblioteka jest oparta na bibliotece równoległej .NET Framework Task Parallel Library (TPL). Aby uzyskać informacje o tej bibliotece, zobacz Task Parallel Library (TPL). |
| ReentrantSemaphore.RevertRelevance |
Struktura, która ukrywa wszelkie dowody, że obiekt wywołujący wprowadził ReentrantSemaphore wartość do momentu usunięcia tej wartości. |
| SpecializedSyncContext |
Struktura, która stosuje i przywraca zmiany w obiekcie SynchronizationContext. |
| TplExtensions.NoThrowTaskAwaitable |
Oczekiwany element, który opakowuje zadanie i nigdy nie zgłasza wyjątku podczas oczekiwania. |
| TplExtensions.NoThrowTaskAwaiter |
Obiekt oczekujący, który opakowuje zadanie i nigdy nie zgłasza wyjątku, gdy czeka. |
| TplExtensions.NoThrowValueTaskAwaitable |
Oczekiwany element, który opakowuje zadanie i nigdy nie zgłasza wyjątku podczas oczekiwania. |
| TplExtensions.NoThrowValueTaskAwaitable<TResult> |
Oczekiwany element, który opakowuje ValueTask<TResult> element i nigdy nie zgłasza wyjątku podczas oczekiwania. |
| TplExtensions.NoThrowValueTaskAwaiter |
Obiekt oczekujący, który opakowuje zadanie i nigdy nie zgłasza wyjątku, gdy czeka. |
| TplExtensions.NoThrowValueTaskAwaiter<TResult> |
Obiekt oczekujący, który opakowuje zadanie i nigdy nie zgłasza wyjątku, gdy czeka. |
Interfejsy
| Nazwa | Opis |
|---|---|
| IAsyncDisposable |
Definiuje metodę asynchroniczną w celu wydania przydzielonych zasobów. |
| IHangReportContributor |
Udostępnia funkcję do tworzenia raportów, które mogą być przydatne podczas analizowania zawieszenia. |
Wyliczenia
| Nazwa | Opis |
|---|---|
| AsyncReaderWriterLock.LockFlags |
Flagi modyfikujące domyślne zachowanie blokady. |
| AsyncReaderWriterResourceLock<TMoniker,TResource>.LockFlags |
Flagi modyfikujące domyślne zachowanie blokady. |
| JoinableTaskCreationOptions |
Określa flagi sterujące opcjonalnym zachowaniem tworzenia i wykonywania zadań. |
| ReentrantSemaphore.ReentrancyMode |
Opisuje sposoby ReentrantSemaphore zachowania się, gdy żądanie semafora jest wykonywane w kontekście, który znajduje się już w semaforze. |
| RegistryChangeNotificationFilters |
Różne typy danych w kluczu rejestru, które generują powiadomienia po zmianie. |
Delegaci
| Nazwa | Opis |
|---|---|
| AsyncEventHandler |
Asynchroniczna procedura obsługi zdarzeń. |
| AsyncEventHandler<TEventArgs> |
Asynchroniczna procedura obsługi zdarzeń. |