この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

Dispatcher クラス

 

公開日: 2016年10月

スレッドの作業項目のキューを管理するためのサービスを提供します。

名前空間:   System.Windows.Threading
アセンブリ:  WindowsBase (WindowsBase.dll 内)

System.Object
  System.Windows.Threading.Dispatcher

public sealed class Dispatcher

名前説明
System_CAPS_pubpropertySystem_CAPS_staticCurrentDispatcher

取得、 Dispatcher 現在のスレッドを実行して、新たに作成 Dispatcher 、スレッドに関連付けられたいずれかがない場合。

System_CAPS_pubpropertyHasShutdownFinished

決定するかどうか、 Dispatcher シャット ダウンが完了します。

System_CAPS_pubpropertyHasShutdownStarted

決定するかどうか、 Dispatcher がシャット ダウンします。

System_CAPS_pubpropertyHooks

に関する追加のイベント情報を提供するフックのコレクションを取得、 Dispatcherです。

System_CAPS_pubpropertyThread

このスレッドを取得 Dispatcher に関連付けられています。

名前説明
System_CAPS_pubmethodBeginInvoke(Delegate, DispatcherPriority, Object[])

スレッドで非同期で実行し、指定された優先順位で、指定された引数の指定したデリゲートを実行する、 Dispatcher に作成されました。

System_CAPS_pubmethodBeginInvoke(Delegate, Object[])

スレッドで非同期的に指定された引数で指定したデリゲートを実行する、 Dispatcher に作成されました。

System_CAPS_pubmethodBeginInvoke(DispatcherPriority, Delegate)

スレッド上の指定した優先度で非同期的に指定されたデリゲートの実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodBeginInvoke(DispatcherPriority, Delegate, Object)

指定した優先度で非同期的に、指定された引数の指定したデリゲートをスレッドで実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodBeginInvoke(DispatcherPriority, Delegate, Object, Object[])

指定した優先度で非同期的に、指定された引数の配列の指定したデリゲートをスレッドで実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodBeginInvokeShutdown(DispatcherPriority)

シャット ダウンを開始、 Dispatcher 非同期的にします。

System_CAPS_pubmethodCheckAccess()

呼び出し元のスレッドがこれに関連付けられているスレッドかどうかを判断 Dispatcherします。

System_CAPS_pubmethodDisableProcessing()

処理を無効になります、 Dispatcher キューです。

System_CAPS_pubmethodEquals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。(Object から継承されます。)

System_CAPS_pubmethodSystem_CAPS_staticExitAllFrames()

入れ子になったフレームを含むすべてのフレームを閉じるように要求します。

System_CAPS_pubmethodSystem_CAPS_staticFromThread(Thread)

取得、 Dispatcher 指定のスレッドにします。

System_CAPS_pubmethodGetHashCode()

既定のハッシュ関数として機能します。(Object から継承されます。)

System_CAPS_pubmethodGetType()

現在のインスタンスの Type を取得します。(Object から継承されます。)

System_CAPS_pubmethodInvoke(Action)

指定した実行 Action スレッドで同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Action, DispatcherPriority)

指定した実行 Action スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Action, DispatcherPriority, CancellationToken)

指定した実行 Action スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

指定した実行 Action スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Delegate, DispatcherPriority, Object[])

スレッドで同期的に指定された引数で指定した優先度で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Delegate, Object[])

スレッドで同期的に指定された引数で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Delegate, TimeSpan, DispatcherPriority, Object[])

スレッドで同期的に指定された引数で指定した優先度で指定のタイム スパン内で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(Delegate, TimeSpan, Object[])

スレッドで同期的に指定された引数で指定した優先度で指定のタイム スパン内で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(DispatcherPriority, Delegate)

指定した優先度で同期的に指定したデリゲートをスレッド上で実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(DispatcherPriority, Delegate, Object)

スレッドで同期的に指定された引数で指定した優先度で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(DispatcherPriority, Delegate, Object, Object[])

スレッドで同期的に指定された引数で指定した優先度で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(DispatcherPriority, TimeSpan, Delegate)

スレッドで指定した優先度に同期的に指定されたタイムアウト値で、指定したデリゲートを実行、 Dispatcher が作成されました。

System_CAPS_pubmethodInvoke(DispatcherPriority, TimeSpan, Delegate, Object)

スレッドで同期的に指定された引数で指定した優先度で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke(DispatcherPriority, TimeSpan, Delegate, Object, Object[])

スレッドで同期的に指定された引数で指定した優先度で指定したデリゲートを実行、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke<TResult>(Func<TResult>)

指定した実行 Func<TResult> スレッドで同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke<TResult>(Func<TResult>, DispatcherPriority)

指定した実行 Func<TResult> スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken)

指定した実行 Func<TResult> スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken, TimeSpan)

指定した実行 Func<TResult> スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeAsync(Action)

指定した実行 Action スレッドで非同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeAsync(Action, DispatcherPriority)

指定した実行 Action スレッドで指定した優先度で非同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeAsync(Action, DispatcherPriority, CancellationToken)

指定した実行 Action スレッドで指定した優先度で非同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeAsync<TResult>(Func<TResult>)

指定した実行 Func<TResult> スレッドで非同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeAsync<TResult>(Func<TResult>, DispatcherPriority)

指定した実行 Func<TResult> スレッドで指定した優先度で非同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeAsync<TResult>(Func<TResult>, DispatcherPriority, CancellationToken)

指定した実行 Func<TResult> スレッドで指定された優先順位で同期的に、 Dispatcher に関連付けられています。

System_CAPS_pubmethodInvokeShutdown()

シャット ダウン処理を開始、 Dispatcher 同期的にします。

System_CAPS_pubmethodSystem_CAPS_staticPushFrame(DispatcherFrame)

実行ループに入ります。

System_CAPS_pubmethodSystem_CAPS_staticRun()

メインの実行のフレームのイベント キューにプッシュ、 Dispatcherです。

System_CAPS_pubmethodToString()

現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)

System_CAPS_pubmethodSystem_CAPS_staticValidatePriority(DispatcherPriority, String)

決定するかどうか、指定した DispatcherPriority 優先順位が無効です。

System_CAPS_pubmethodVerifyAccess()

呼び出し元のスレッドがこれにアクセスをサポートしているかどうかを決定 Dispatcherします。

System_CAPS_pubmethodSystem_CAPS_staticYield()

非同期的に現在の dispatcher にコントロールを生成し、その他のイベントを処理するディスパッチャーの機会を提供する待機可能オブジェクトを作成します。

System_CAPS_pubmethodSystem_CAPS_staticYield(DispatcherPriority)

非同期的に現在の dispatcher にコントロールを生成し、その他のイベントを処理するディスパッチャーの機会を提供する待機可能オブジェクトを作成します。 このメソッドの結果を待機しているコードに制御が戻るときに発生する作業は、指定した優先度でスケジュールされます。

名前説明
System_CAPS_pubeventShutdownFinished

発生したときに、 Dispatcher シャット ダウンが完了するとします。

System_CAPS_pubeventShutdownStarted

発生したときに、 Dispatcher シャット ダウンを開始します。

System_CAPS_pubeventUnhandledException

スレッドの例外がスローされ、によるデリゲートの実行中にキャッチされていないときに発生 Invoke または BeginInvokeです。

System_CAPS_pubeventUnhandledExceptionFilter

スレッドの例外がスローされ、によるデリゲートの実行中にキャッチされていないときに発生 Invoke または BeginInvoke フィルター ステージの場合にします。

名前説明
System_CAPS_pubmethodBeginInvoke(Action)

オーバーロードされます。スレッドでの通常の優先順位を指定したデリゲートを非同期的に実行する、指定した Dispatcher に作成されました。(DispatcherExtensions によって定義されています。)

System_CAPS_pubmethodBeginInvoke(Action, DispatcherPriority)

オーバーロードされます。スレッドで指定した優先度で非同期的に指定したデリゲートを実行する指定した Dispatcher 上に作成されました。(DispatcherExtensions によって定義されています。)

System_CAPS_pubmethodInvoke(Action, TimeSpan)

オーバーロードされます。スレッドで同期的に指定したデリゲートを実行する指定した Dispatcher で作成され、指定されたタイムアウト期間後に実行を停止します。(DispatcherExtensions によって定義されています。)

System_CAPS_pubmethodInvoke(Action, TimeSpan, DispatcherPriority)

オーバーロードされます。スレッドで指定した優先度で同期的に指定したデリゲートを実行する指定した Dispatcher で作成され、指定されたタイムアウト期間後に実行を停止します。(DispatcherExtensions によって定義されています。)

Dispatcher 特定のスレッドの作業項目の優先順位付けされたキューが保持されます。

ときに、 Dispatcher が作成されるスレッドになるだけ Dispatcher を関連付けることができる、スレッド場合でも、 Dispatcher がシャット ダウンします。

取得しようとすると、 CurrentDispatcher 、現在のスレッドと Dispatcher 、スレッドに関連付けられていない、 Dispatcher が作成されます。 A Dispatcher を作成する際にも作成、 DispatcherObjectです。 作成する場合、 Dispatcher バック グラウンド スレッドでスレッドを終了する前に、ディスパッチャーをシャット ダウンすることを確認します。

場合、 Dispatcher がシャット ダウン、再起動することはできません。

WPF, 、 DispatcherObject によってのみアクセスできる、 Dispatcher に関連付けられました。  たとえば、バック グラウンド スレッドがの内容を更新できません、 Button と関連付けられている、 Dispatcher で、 UI スレッドです。 バック グラウンド スレッドにアクセスするために、 Content のプロパティ、 Button, 、バック グラウンド スレッドに作業を委任する必要があります、 Dispatcher に関連付けられている、 UI スレッドです。 いずれかを使用してこの情報は Invoke または BeginInvokeです。 Invoke 同期的および BeginInvoke は非同期です。 キューに追加の操作では、 Dispatcher 指定した DispatcherPriorityします。

場合 BeginInvoke で呼び出される、 Dispatcher をシャット ダウン、返されたの status プロパティ DispatcherOperation に設定されている Abortedします。

すべてのメソッドの Dispatcher, 、例外として DisableProcessing, はフリー スレッドです。

派生したオブジェクト DispatcherObject スレッド アフィニティがあります。

派生したオブジェクト Freezable はフリー スレッドは、固定したとします。 詳細については、次を参照してください。 Freezable オブジェクトの概要します。

次の例に、操作を配置する方法を示しています、 Dispatcherです。 この例の完全なソース コードを参照してください。 Single-Threaded Application with Long-Running Calculation Sampleします。

最初に、デリゲート引数を受け取らないが作成されます。

public delegate void NextPrimeDelegate();

次に、 BeginInvoke(DispatcherPriority, Delegate) が呼び出されます。 この呼び出しを BeginInvoke(DispatcherPriority, Delegate) 2 つのパラメーター: に設定されている優先順位 DispatcherPriority.Normal, 、およびデリゲートのインスタンスを通じてに渡されるコールバック NextPrimeDelegateします。

startStopButton.Dispatcher.BeginInvoke(
    DispatcherPriority.Normal,
    new NextPrimeDelegate(CheckNextNumber));

.NET Framework
3.0 以降で使用可能
Silverlight
2.0 以降で使用可能
Windows Phone Silverlight
7.0 以降で使用可能

この型のパブリック static (Visual Basic では Shared ) メンバーはスレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

トップに戻る
表示: