ControlledExecution.Run(Action, CancellationToken) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
注意事項
ControlledExecution.Run method may corrupt the process and should not be used in production code.
非同期で中止できるコードを実行します。
public:
static void Run(Action ^ action, System::Threading::CancellationToken cancellationToken);
[System.Obsolete("ControlledExecution.Run method may corrupt the process and should not be used in production code.", DiagnosticId="SYSLIB0046", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static void Run (Action action, System.Threading.CancellationToken cancellationToken);
[<System.Obsolete("ControlledExecution.Run method may corrupt the process and should not be used in production code.", DiagnosticId="SYSLIB0046", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member Run : Action * System.Threading.CancellationToken -> unit
Public Shared Sub Run (action As Action, cancellationToken As CancellationToken)
パラメーター
- action
- Action
実行するコードを表すデリゲート。
- cancellationToken
- CancellationToken
実行を中止するために使用できるキャンセル トークン。
- 属性
例外
メソッドは、このプラットフォームではサポートされていません。
action
引数が null
です。
現在のスレッドでは、 メソッドが既に Run(Action, CancellationToken) 実行されています。
実行が中止されました。
注釈
このメソッドを使用すると、そのコードを実行するスレッドで例外をスローすることで、任意のマネージド コードを非協調的な方法で中止できます。 例外はコードによってキャッチされる可能性があります。実行フローが メソッドに戻るまで、ブロックの catch
最後に ControlledExecution.Run
再スローされます。
コードの実行が直ちに中止されるとは限りません。また、まったく中止されるわけではありません。 この状況は、たとえば、スレッドがアンマネージド コードまたは catch
中止プロシージャの一部として呼び出される ブロックと finally
ブロックを実行しなくなった場合に、中止を無期限に遅延させる場合に発生する可能性があります。 さらに、スレッドが現在 または finally
ブロックを実行している場合、すぐに実行がcatch
中止されない場合があります。
予期しない場所でコードを中止すると、プロセス内のデータ構造の状態が破損し、予期しない結果になる可能性があります。 そのため、このメソッドは実稼働コードでは使用しないでください。このメソッドを呼び出すと、コンパイル時の警告が生成されます。
適用対象
.NET