Microsoft.VisualStudio.Threading 命名空間

Microsoft。VisualStudio.執行緒命名空間包含用於 Visual Studio SDK 專案的 API。 你應該用這些 API 來做 Visual Studio 的非同步程式設計。 這樣做有助於避免死局

此函式庫基於 .NET Framework 任務平行函式庫(TPL)。 關於此函式庫的資訊,請參見任務平行函式庫(TPL)。

類別

名稱 Description
AsyncAutoResetEvent

一種非同步的 AutoResetEvent 實作。

AsyncBarrier

一種非同步障礙,阻擋信號者,直到其他參與者都發出信號。

AsyncCountdownEvent

一個非同步風格的倒數事件。

AsyncCrossProcessMutex

一個可以非同步輸入的互斥體。

AsyncLazy<T>

一個執行緒安全、懶散且非同步評估的價值工廠。

AsyncLazyInitializer

懶惰地執行一個代理,該代理有某種副作用(通常是初始化某物),使代理最多執行一次。

AsyncLocal<T>

儲存參考資料,使其能在同一通話情境下被檢索。

AsyncManualResetEvent

這種風格 ManualResetEvent 可以非同步等待。

AsyncQueue<T>

一個執行緒安全、非同步可排隊的佇列。

AsyncReaderWriterLock

一種非阻塞鎖,允許同時存取、排他存取,或同時升級至排他存取。

AsyncReaderWriterLock.Awaiter

管理對鎖的非同步存取。

AsyncReaderWriterResourceLock<TMoniker,TResource>

一種非阻塞性鎖,允許同時存取、專屬存取,或同時可升級至專屬存取,為必須準備的資源做特殊允許,以應付並行或專屬存取。

AsyncSemaphore

一個類似非同步 SemaphoreSlim 但釋放語法更方便的類別。

AwaitExtensions

.NET 4.5 的擴充方法與待遇。

CancellationTokenExtensions

擴展到 CancellationToken。

DelegatingJoinableTaskFactory

一個用於派生型態的 JoinableTaskFactory 基底類別,該類型會將部分工作委派給現有實例。

DispatcherExtensions

WPF Dispatcher 的擴充方法,以提升與 JoinableTaskFactory的互通性。

HangReportContribution

對彙整懸掛報告的貢獻。

IllegalSemaphoreUsageException

例外,當 a ReentrantSemaphore 的契約被違反時會被拋棄。

JoinableTask

追蹤非同步操作,並提供加入這些操作以避免死鎖的能力,同時同步阻擋主執行緒完成操作。

JoinableTask<T>

追蹤非同步操作,並提供加入這些操作以避免死鎖的能力,同時同步阻擋主執行緒完成操作。

JoinableTaskCollection

一堆不完整的 JoinableTask 物品。

JoinableTaskContext

一個共同的情境,讓可合併的任務可以被創建並互動,以避免死結。

JoinableTaskContext.HangDetails

一門課用來概括可能的絞刑細節。 此類別的實例 JoinableTaskContext.HangDetails 會傳給註冊掛機通知的 JoinableTaskContextNode 實例。

JoinableTaskContextException

當提供的 JoinableTaskContext 配置錯誤或虛擬方法被覆寫而違反合約時,會拋出例外。 此例外不應被抓包。 當應用程式出現程式錯誤時,會拋出這個錯誤。

JoinableTaskContextNode

一個可自訂的實例來源 JoinableTaskFactory 。

JoinableTaskFactory

這是一個用來啟動非同步任務的工廠,當任務需要應用程式的主執行緒時,可以減輕死機,而主執行緒本身可能阻礙任務完成。

NoMessagePumpSyncContext

一個同步上下文,其同步阻擋等待方法不允許透過訊息泵重新進入。

NonConcurrentSynchronizationContext

SynchronizationContext A 依照接收順序執行訊息。

ProgressWithCompletion<T>

一種增量進度報告機制,同時允許非同步等待所有報告處理完畢。

ReentrantSemaphore

一個 JoinableTaskFactory-aware 信號量,允許重新進入且不會佔用信號板的另一個欄位。

SemaphoreFaultedException

當 a ReentrantSemaphore 處於錯誤狀態時會拋出異常。

SingleThreadedSynchronizationContext

一個單執行緒同步情境,類似於 DispatcherSynchronizationContext 和 WindowsFormsSynchronizationContext。

SingleThreadedSynchronizationContext.Frame

一個訊息泵送框架,可以用來 PushFrame(SingleThreadedSynchronizationContext+Frame) 推送擁有執行緒的訊息。

ThreadingTools

跨執行緒工作的工具方法。

TplExtensions

任務平行函式庫的擴充。

結構

名稱 Description
AsyncCrossProcessMutex.LockReleaser

從該區域回傳 EnterAsync(TimeSpan) 的值必須被處置以釋放互斥體。

AsyncLazy<T>.RevertRelevance

一個結構,能隱藏某個程式碼區塊的相關性,不JoinableTaskContext讓特定AsyncLazy<T>程式碼區塊與其產生時使用。

AsyncReaderWriterLock.Awaitable

一個等待的,會從非同步鎖請求中回傳。

AsyncReaderWriterLock.LockHandle

這是特定鎖的「公開」表示。

AsyncReaderWriterLock.Releaser

一個價值,其處置會釋放被扣押的鎖。

AsyncReaderWriterLock.Suppression

一個數值,其處理會恢復呼叫者持有的任何鎖的可見性。

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaitable

一個等待的,會從非同步鎖請求中回傳。

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaiter

管理對鎖的非同步存取。

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceReleaser

一個價值,其處置會釋放被扣押的鎖。

AsyncSemaphore.Releaser

一個在處理時觸發解鎖的值。

AwaitExtensions.AggregateExceptionAwaitable

ConfigureAwaitForAggregateException(Task, Boolean)結果是準備一個Task等待的投擲,所有內部例外。

AwaitExtensions.AggregateExceptionAwaiter

GetAwaiter()結果是準備一個Task等待的投擲,所有內部例外。

AwaitExtensions.ConfiguredTaskYieldAwaitable

一個 awadable 總是會讓呼叫非同步方法yield,然後立即恢復,可能是在原始 SynchronizationContext。

AwaitExtensions.ConfiguredTaskYieldAwaiter

一個等待器,會總是引導呼叫非同步方法讓出,然後立即恢復,可能是在原始 SynchronizationContext方法上。

AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable

一個任務等待,且能同步執行回調於完成的呼叫堆疊。

AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable<T>

一個任務等待,且能同步執行回調於完成的呼叫堆疊。

AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter

一個任務等待器,能同步執行回調於完成的呼叫堆疊上。

AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter<T>

一個任務等待器,能同步執行回調於完成的呼叫堆疊上。

AwaitExtensions.SynchronizationContextAwaiter

一名等待者從 GetAwaiter(SynchronizationContext)。

AwaitExtensions.TaskSchedulerAwaitable

一個可對指定任務排程器執行續行的 awadable。

AwaitExtensions.TaskSchedulerAwaiter

一名等待者從 GetAwaiter(TaskScheduler)。

CancellationTokenExtensions.CombinedCancellationToken

提供結合多個其他代幣的存取 CancellationToken 權,並允許方便地處理任何適用 CancellationTokenSource的 。

JoinableTaskCollection.JoinRelease

一個值,其處置會取消一個 Join() 操作。

JoinableTaskContext.RevertRelevance

一個能清除 CallContext 與 SynchronizationContext 非同步/執行緒靜態的結構,並在該結構被丟棄時恢復這些值。

JoinableTaskFactory.MainThreadAwaitable

一個可期待的結構,促進非同步過渡到主執行緒。

JoinableTaskFactory.MainThreadAwaiter

一個 awaiter 結構,能促進非同步轉換到 Main 執行緒。

JoinableTaskFactory.ProcessingDisabledOperation

一個結構,其處置將使先前呼叫的效果回復。DisableProcessing()

JoinableTaskInternals.JoinableTaskToken

Microsoft。VisualStudio.執行緒命名空間包含用於 Visual Studio SDK 專案的 API。 你應該用這些 API 來做 Visual Studio 的非同步程式設計。 這樣做有助於避免死局

此函式庫基於 .NET Framework 任務平行函式庫(TPL)。 關於此函式庫的資訊,請參見任務平行函式庫(TPL)。

ReentrantSemaphore.RevertRelevance

一個結構,能隱藏任何來電者已進入某 ReentrantSemaphore 個數字的證據,直到該數值被處理。

SpecializedSyncContext

一個能套用並還退變更於 SynchronizationContext的結構。

TplExtensions.NoThrowTaskAwaitable

一個能完成任務且在等待時不拋出例外的等待。

TplExtensions.NoThrowTaskAwaiter

一個等待者,能完成任務,且在被等待時從不拋出例外。

TplExtensions.NoThrowValueTaskAwaitable

一個能完成任務且在等待時不拋出例外的等待。

TplExtensions.NoThrowValueTaskAwaitable<TResult>

一個包裹起來且在被服務時從未拋出例外的等待 ValueTask<TResult> 。

TplExtensions.NoThrowValueTaskAwaiter

一個等待者,能完成任務,且在被等待時從不拋出例外。

TplExtensions.NoThrowValueTaskAwaiter<TResult>

一個等待者,能完成任務,且在被等待時從不拋出例外。

介面

名稱 Description
IAsyncDisposable

定義一種非同步方法以釋放分配的資源。

IHangReportContributor

提供產生報告的功能,可能在分析 hangs 時有所幫助。

列舉

名稱 Description
AsyncReaderWriterLock.LockFlags

這些標誌會改變預設鎖定行為。

AsyncReaderWriterResourceLock<TMoniker,TResource>.LockFlags

這些標誌會改變預設鎖定行為。

JoinableTaskCreationOptions

指定旗標,控制建立和執行工作的選擇性行為。

ReentrantSemaphore.ReentrancyMode

描述在已存在信號量的情境中提出信號量請求時,可能 ReentrantSemaphore 的行為方式。

RegistryChangeNotificationFilters

登錄檔金鑰中各種資料,變更時會產生通知。

委派

名稱 Description
AsyncEventHandler

非同步事件處理程式。

AsyncEventHandler<TEventArgs>

非同步事件處理程式。