語言

DelegatingJoinableTaskFactory 類別

定義

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

public ref class DelegatingJoinableTaskFactory : Microsoft::VisualStudio::Threading::JoinableTaskFactory
[Windows::Foundation::Metadata::WebHostHidden]
public ref class DelegatingJoinableTaskFactory : Microsoft::VisualStudio::Threading::JoinableTaskFactory
[Windows::Foundation::Metadata::WebHostHidden]
class DelegatingJoinableTaskFactory : Microsoft::VisualStudio::Threading::JoinableTaskFactory
public class DelegatingJoinableTaskFactory : Microsoft.VisualStudio.Threading.JoinableTaskFactory
type DelegatingJoinableTaskFactory = class
    inherit JoinableTaskFactory
Public Class DelegatingJoinableTaskFactory
Inherits JoinableTaskFactory
繼承
DelegatingJoinableTaskFactory

備註

所有虛擬方法預設會呼叫內部 JoinableTaskFactory 的行為,而非基底類別的預設行為。 這很有用,因為衍生型別無法呼叫該型別其他實例的受保護方法。

建構函式

名稱 Description
DelegatingJoinableTaskFactory(JoinableTaskFactory)

初始化 DelegatingJoinableTaskFactory 類別的新執行個體。

屬性

名稱 Description
Context

取得該工廠所屬的可加入任務上下文。

(繼承來源 JoinableTaskFactory)
HangDetectionTimeout

取得或設定逾時,之後同步封鎖時沒有任何活動顯示有延遲。

(繼承來源 JoinableTaskFactory)
UnderlyingSynchronizationContext

它會取得控制主機主執行緒的底層 SynchronizationContext 。

(繼承來源 JoinableTaskFactory)

方法

名稱 Description
Add(JoinableTask)

將指定的可加入任務加入到適用的集合中。

(繼承來源 JoinableTaskFactory)
DisableProcessing()

防止過濾訊息泵在環境同步等待 JoinableTask期間運行。

(繼承來源 JoinableTaskFactory)
IsWaitingOnLongRunningTask()

檢查目前的 joinableTask 是否正在等待一個長期執行的任務。

(繼承來源 JoinableTaskFactory)
OnTransitionedToMainThread(JoinableTask, Boolean)

當可加入的任務完成主執行緒的轉換時,該任務會被提出。

OnTransitioningToMainThread(JoinableTask)

當可加入的任務要求轉移到主執行緒時,會被提出。

PostToUnderlyingSynchronizationContext(SendOrPostCallback, Object)

當主執行緒自由可用時,會向指定的底層 SynchronizationContext 發布訊息以供處理。

Run(Func<Task>, JoinableTaskCreationOptions)

執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。

(繼承來源 JoinableTaskFactory)
Run(Func<Task>)

執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。

(繼承來源 JoinableTaskFactory)
Run<T>(Func<Task<T>>, JoinableTaskCreationOptions)

執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。

(繼承來源 JoinableTaskFactory)
Run<T>(Func<Task<T>>)

執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。

(繼承來源 JoinableTaskFactory)
RunAsync(Func<Task>, JoinableTaskCreationOptions)

在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。

(繼承來源 JoinableTaskFactory)
RunAsync(Func<Task>, String, JoinableTaskCreationOptions)

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

(繼承來源 JoinableTaskFactory)
RunAsync(Func<Task>)

在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。

(繼承來源 JoinableTaskFactory)
RunAsync<T>(Func<Task<T>>, JoinableTaskCreationOptions)

在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。

(繼承來源 JoinableTaskFactory)
RunAsync<T>(Func<Task<T>>, String, JoinableTaskCreationOptions)

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

(繼承來源 JoinableTaskFactory)
RunAsync<T>(Func<Task<T>>)

在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。

(繼承來源 JoinableTaskFactory)
SwitchToMainThreadAsync(Boolean, CancellationToken)

取得一個 waitable,其續行會在該實例初始化的同步上下文中執行,以減輕死結與重入。

(繼承來源 JoinableTaskFactory)
SwitchToMainThreadAsync(CancellationToken)

獲得一個等待的項目,其續寫會在主線程中執行,以減少死局與重新進入的問題。

(繼承來源 JoinableTaskFactory)
WaitSynchronously(Task)

同步阻擋呼叫執行緒以完成指定任務。

WaitSynchronouslyCore(Task)

同步阻擋呼叫執行緒以完成指定任務。

(繼承來源 JoinableTaskFactory)

擴充方法

名稱 Description
Run(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到可取消且非同步的操作完成。 若操作時間過長,會顯示可取消的等待對話框。

Run(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到非同步操作完成。 若操作時間過長,會顯示可取消的等待對話框。

Run(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到非同步操作完成。 用戶可自行取消。

Run(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到非同步操作完成。 用戶不提供取消服務。

Run<T>(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task<T>>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到可取消且非同步的操作完成。 若操作時間過長,會顯示可取消的等待對話框。

Run<T>(JoinableTaskFactory, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task<T>>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到非同步操作完成。 若操作時間過長,會顯示可取消的等待對話框。

Run<T>(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,CancellationToken,Task<T>>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到非同步操作完成。 用戶可自行取消。

Run<T>(JoinableTaskFactory, String, String, Func<IProgress<ThreadedWaitDialogProgressData>,Task<T>>, Nullable<TimeSpan>)

阻擋呼叫(UI)執行緒,直到非同步操作完成。 用戶不提供取消服務。

RunAsync(JoinableTaskFactory, VsTaskRunContext, Func<Task>)

將非同步方法的呼叫包裝,使其可能非同步執行,但未來可能會同步完成(等待)。

RunAsync<T>(JoinableTaskFactory, VsTaskRunContext, Func<Task<T>>)

將非同步方法的呼叫包裝,使其可能非同步執行,但未來可能會同步完成(等待)。

RunAsyncAsVsTask<T>(JoinableTaskFactory, VsTaskRunContext, Func<CancellationToken,Task<T>>)

建立一個 IVsTask 來追蹤可取消的非同步操作。

StartOnIdle(JoinableTaskFactory, Action, VsTaskRunContext)

在 UI 執行緒上排程一個代理程式,用於背景執行,且不會繼承呼叫者對 UI 執行緒的任何權利。

StartOnIdle(JoinableTaskFactory, Func<Task>, VsTaskRunContext)

在 UI 執行緒上排程一個代理程式,用於背景執行,且不會繼承呼叫者對 UI 執行緒的任何權利。

WithPriority(JoinableTaskFactory, Dispatcher, DispatcherPriority)

建立 JoinableTaskFactory 一個,將工作排程為指定的 Dispatcher 和 DispatcherPriority。

WithPriority(JoinableTaskFactory, VsTaskRunContext)

建立JoinableTaskFactory一個,排程工作,並依照指定的 Visual Studio UI 執行緒優先順序進行工作。

適用於

執行緒安全性

此類型對所有成員皆為執行緒安全。