言語

JoinableTaskContext.CreateNoOpContext メソッド

定義

SwitchToMainThreadAsync(CancellationToken)の呼び出しに no-op するように構成されたJoinableTaskContext クラスの新しいインスタンスを初期化します。

public static Microsoft.VisualStudio.Threading.JoinableTaskContext CreateNoOpContext();
static member CreateNoOpContext : unit -> Microsoft.VisualStudio.Threading.JoinableTaskContext
Public Shared Function CreateNoOpContext () As JoinableTaskContext

返品

JoinableTaskContextの新しいインスタンス。

注釈

このメソッドは、最初に null に設定された Current プロパティを使用してJoinableTaskContext() コンストラクターを呼び出すことと同じです。 ただし、このエントリ ポイントの動作は、 Currentの値に関係なく同じです。

呼び出し元のスレッドは、 MainThreadIsOnMainThreadなどのプロパティで使用するために引き続きキャプチャされます。 これらのプロパティは、通常、このライブラリ以外のアプリケーション固有のコードで使用される場合を除き、効果はありません。

このメソッドは、単体テスト環境またはメイン スレッドを持たないが、JoinableTaskContextまたはJoinableTaskFactoryのインスタンスを必要とするコードを含むプロセスでJoinableTaskContextを作成する場合に便利です。 このようなコードは、このメソッドによって返されたインスタンスを受け取り、通常の方法で使用できますが、メイン スレッドスイッチは受け入れされません。

スレッド セーフの問題: メイン スレッド スイッチは受け入れられないため、コンカレンシーを回避する手段としてメイン スレッドを要求するコードは、データ競合状態のために誤動作する可能性があります。

適用対象