長時間実行されているTaskオブジェクトは複数あります。私は彼らにすべて無期限に走り続けたいと思っています。これらのタスクの1つは、システムを自己監視することです。正常な動作状態以外で何かが発生した場合は、動作を停止して他のタスクに何らかの原因で動作が停止するように通知したいと思います。 Task.WaitAny()を使用するだけで十分ですか?一方のスレッドを停止すると他のスレッドは停止しますか、他のタスクは無期限に実行されますか?ピアの長時間実行されているタスクが停止している場合、そのタスクをキャンセルする方法
1
A
答えて
2
キャンセルを明示的に処理しない限り、これらのタスクは引き続き実行されます。これを処理する好ましい方法は、.NETで新しいcooperative cancellation support 4.
を使用している
通常の方法では、タスクが失敗したときに/障害を実行する各タスクの継続を持っているだろう。その後、キャンセルされるCancelationTokenSource
がある可能性があります。それぞれのタスクは、キャンセルが要求されたため中止する必要があるかどうかを確認することがあります。
関連する問題
- 1. タスク実行時のタスクの停止
- 2. 長時間実行されるタスクを実行するフレームワーク
- 3. 長時間実行されるVBAタスクをユーザーが終了する方法を教えてください。
- 4. バックグラウンドで長時間実行するタスク
- 5. シートと長時間実行するタスク
- 6. 非同期に実行されるタスクの一時停止と再開方法
- 7. ループベースのステートメントを実行していないタスクをキャンセルする方法
- 8. 長時間実行されているタスクの後ろにスタックすると、Celerybeatの定期的なタスクが複数回実行される
- 9. Java EE WebApp + icefacesで長時間実行されるタスク
- 10. TPLでトランザクションとして複数の長時間実行されるタスクを実行するC#
- 11. フラスコと長時間実行タスク
- 12. AWSサービスを使用して長時間実行するタスクをスケジュールする
- 13. 長期実行タスクの実行方法
- 14. テスト実行を停止した後にタスクを実行する方法は?
- 15. JS、実行されている場合にプロセスの実行を停止する方法...?
- 16. タイムアウトパラメータが設定されていても、HttpClientが長時間停止する
- 17. TPL並列実行時間が長いタスク
- 18. 長時間実行中のタスクを強制終了/再開する方法
- 19. ThrowIfCancellationRequestedのないタスクを停止する
- 20. 新しいタスクが作成されたときのすべてのタスクのキャンセル
- 21. タスクを使用して長時間実行しているIO /ネットワーク操作をキャンセルするにはどうすればよいでしょうか?
- 22. ASP.NET長い実行タスク。スレッドが中断されている例外
- 23. スケジュールされたすべてのタスクを停止する
- 24. Java.util.Timerクラスでスケジュールされたタスクを停止する方法
- 25. 長時間実行されているプロジェクトでRails移行を統合する
- 26. Google Chromeの拡張機能で長時間実行されるタスク
- 27. Celeryでは、どのようにタスクを実行してから、そのタスクを別のタスクを実行させて、それを続けるのですか?
- 28. cherrypyのMonitorを使って1つのタスクを実行して停止する方法はありますか?
- 29. 長時間実行されているSidekiqジョブが継続しています
- 30. 一定の時間間隔をおいて非同期タスクを繰り返し実行する方法
ありがとうございます。それはキャッチ22のように感じたが、継続トークンを使用してキャンセルトークンを送信することは素晴らしい解決策である。 –