言語

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 を呼び出します。 これは、派生型がその型の別のインスタンスで保護されたメソッドを呼び出すことができないので便利です。

コンストラクター

名前 説明
DelegatingJoinableTaskFactory(JoinableTaskFactory)

DelegatingJoinableTaskFactory クラスの新しいインスタンスを初期化します。

プロパティ

名前 説明
Context

このファクトリが属する参加可能なタスク コンテキストを取得します。

(継承元 JoinableTaskFactory)
HangDetectionTimeout

同期的にブロックしている間にアクティビティが停止したことを示すタイムアウトを取得または設定します。

(継承元 JoinableTaskFactory)
UnderlyingSynchronizationContext

ホスト内のメイン スレッドを制御する基になる SynchronizationContext を取得します。

(継承元 JoinableTaskFactory)

メソッド

名前 説明
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)

呼び出し元のスレッドで非同期デリゲートを呼び出し、非同期メソッドが生成されたときに呼び出し元に戻ります。 非同期デリゲートは、非同期メソッドの完了を待機しているメイン スレッドがブロックされている間に、非同期メソッドがメイン スレッドを必要とする場合にデッドロックを軽減するように呼び出されます。

(継承元 JoinableTaskFactory)
RunAsync(Func<Task>, String, JoinableTaskCreationOptions)

作業の一部を既存のインスタンスに委任する派生型の JoinableTaskFactory 基底クラス。

(継承元 JoinableTaskFactory)
RunAsync(Func<Task>)

呼び出し元のスレッドで非同期デリゲートを呼び出し、非同期メソッドが生成されたときに呼び出し元に戻ります。 非同期デリゲートは、非同期メソッドの完了を待機しているメイン スレッドがブロックされている間に、非同期メソッドがメイン スレッドを必要とする場合にデッドロックを軽減するように呼び出されます。

(継承元 JoinableTaskFactory)
RunAsync<T>(Func<Task<T>>, JoinableTaskCreationOptions)

呼び出し元のスレッドで非同期デリゲートを呼び出し、非同期メソッドが生成されたときに呼び出し元に戻ります。 非同期デリゲートは、非同期メソッドの完了を待機しているメイン スレッドがブロックされている間に、非同期メソッドがメイン スレッドを必要とする場合にデッドロックを軽減するように呼び出されます。

(継承元 JoinableTaskFactory)
RunAsync<T>(Func<Task<T>>, String, JoinableTaskCreationOptions)

作業の一部を既存のインスタンスに委任する派生型の JoinableTaskFactory 基底クラス。

(継承元 JoinableTaskFactory)
RunAsync<T>(Func<Task<T>>)

呼び出し元のスレッドで非同期デリゲートを呼び出し、非同期メソッドが生成されたときに呼び出し元に戻ります。 非同期デリゲートは、非同期メソッドの完了を待機しているメイン スレッドがブロックされている間に、非同期メソッドがメイン スレッドを必要とする場合にデッドロックを軽減するように呼び出されます。

(継承元 JoinableTaskFactory)
SwitchToMainThreadAsync(Boolean, CancellationToken)

デッドロックと再入の両方を軽減する方法で、このインスタンスが初期化された同期コンテキストで継続を実行する待機可能なユーザーを取得します。

(継承元 JoinableTaskFactory)
SwitchToMainThreadAsync(CancellationToken)

デッドロックと再入の両方を軽減する方法で、メイン スレッドで継続を実行する待機可能な文字列を取得します。

(継承元 JoinableTaskFactory)
WaitSynchronously(Task)

指定したタスクが完了するまで、呼び出し元のスレッドを同期的にブロックします。

WaitSynchronouslyCore(Task)

指定したタスクが完了するまで、呼び出し元のスレッドを同期的にブロックします。

(継承元 JoinableTaskFactory)

拡張メソッド

名前 説明
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)

指定したDispatcherDispatcherPriorityで作業をスケジュールするJoinableTaskFactoryを作成します。

WithPriority(JoinableTaskFactory, VsTaskRunContext)

指定したVisual Studio UI スレッド優先度で作業をスケジュールするJoinableTaskFactoryを作成します。

適用対象

スレッド セーフ

この型は、すべてのメンバーに対してスレッド セーフです。