JoinableTaskFactory 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這是一個用來啟動非同步任務的工廠,當任務需要應用程式的主執行緒時,可以減輕死機,而主執行緒本身可能阻礙任務完成。
public ref class JoinableTaskFactory
[Windows::Foundation::Metadata::WebHostHidden]
class JoinableTaskFactory
public class JoinableTaskFactory
type JoinableTaskFactory = class
Public Class JoinableTaskFactory
- 繼承
-
JoinableTaskFactory
- 衍生
備註
如需更完整的評論,請參閱 JoinableTaskContext。
建構函式
| 名稱 | Description |
|---|---|
| JoinableTaskFactory(JoinableTaskCollection) |
初始化一個新的類別實例 JoinableTaskFactory ,將所有產生的工作加入指定的集合。 |
| JoinableTaskFactory(JoinableTaskContext) |
初始化 JoinableTaskFactory 類別的新執行個體。 |
屬性
| 名稱 | Description |
|---|---|
| Context |
取得該工廠所屬的可加入任務上下文。 |
| HangDetectionTimeout |
取得或設定逾時,之後同步封鎖時沒有任何活動顯示有延遲。 |
| UnderlyingSynchronizationContext |
它會取得控制主機主執行緒的底層 SynchronizationContext 。 |
方法
| 名稱 | Description |
|---|---|
| Add(JoinableTask) |
將指定的可加入任務加入到適用的集合中。 |
| DisableProcessing() |
防止過濾訊息泵在環境同步等待 JoinableTask期間運行。 |
| IsWaitingOnLongRunningTask() |
檢查目前的 joinableTask 是否正在等待一個長期執行的任務。 |
| OnTransitionedToMainThread(JoinableTask, Boolean) |
當可加入的任務完成主執行緒的轉換時,該任務會被提出。 |
| OnTransitioningToMainThread(JoinableTask) |
當可加入的任務要求轉移到主執行緒時,會被提出。 |
| PostToUnderlyingSynchronizationContext(SendOrPostCallback, Object) |
當主執行緒自由可用時,會向指定的底層 SynchronizationContext 發布訊息以供處理。 |
| Run(Func<Task>, JoinableTaskCreationOptions) |
執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。 |
| Run(Func<Task>) |
執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。 |
| Run<T>(Func<Task<T>>, JoinableTaskCreationOptions) |
執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。 |
| Run<T>(Func<Task<T>>) |
執行指定的非同步方法至完成,同時同步阻擋呼叫執行緒。 |
| RunAsync(Func<Task>, JoinableTaskCreationOptions) |
在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。 |
| RunAsync(Func<Task>, String, JoinableTaskCreationOptions) |
這是一個用來啟動非同步任務的工廠,當任務需要應用程式的主執行緒時,可以減輕死機,而主執行緒本身可能阻礙任務完成。 |
| RunAsync(Func<Task>) |
在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。 |
| RunAsync<T>(Func<Task<T>>, JoinableTaskCreationOptions) |
在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。 |
| RunAsync<T>(Func<Task<T>>, String, JoinableTaskCreationOptions) |
這是一個用來啟動非同步任務的工廠,當任務需要應用程式的主執行緒時,可以減輕死機,而主執行緒本身可能阻礙任務完成。 |
| RunAsync<T>(Func<Task<T>>) |
在呼叫者的執行緒中呼叫一個非同步代理,當非同步方法被 yield 時,則回傳給呼叫者。 非同步代理的呼叫方式是為了減輕非同步方法在主執行緒阻塞等待非同步方法完成時,主執行緒需要執行緒時的死鎖。 |
| SwitchToMainThreadAsync(Boolean, CancellationToken) |
取得一個 waitable,其續行會在該實例初始化的同步上下文中執行,以減輕死結與重入。 |
| SwitchToMainThreadAsync(CancellationToken) |
獲得一個等待的項目,其續寫會在主線程中執行,以減少死局與重新進入的問題。 |
| WaitSynchronously(Task) |
同步阻擋呼叫執行緒以完成指定任務。 若在主執行緒上執行,執行緒休眠時會抑制任何適用的訊息泵浦。 |
| WaitSynchronouslyCore(Task) |
同步阻擋呼叫執行緒以完成指定任務。 |
擴充方法
適用於
執行緒安全性
此類型對所有成員皆為執行緒安全。