私はシーケンシャルロジックを実行するタスクを持っており、このタスクが別のタスクからそのロジックを実行するのを止めたいと考えています。ランデブーを起こさずにこれを行う方法はありますか? タスクを中断するにはどうしたらいいですか? ありがとうございます。Adaで緊急に課題を通知するには?
1
A
答えて
3
Asynchronous Transfer of Controlを使用して、停止する部分をabortable_partに配置するか、直接abortを使用してタスクを強制終了することができます。
GNATを使用している場合、GNAT.Taskingパッケージを見ることができます。
2
一般的に、保護対象フラグなどの「チェックポイント」を使用して順次ロジックを構成する方がよい場合があります。ここで、中止する信号があるかどうかを簡単にテストできます。保護されたオブジェクトは、この種の高速テストをサポートする軽量な並行性メカニズムとして設計されています。
それ本当には、ステートメントのシーケンスでどの時点で中断する必要がありますか?ステートメントブロックまたは反復を完了し、フラグチェックを実際に容認できないものにするために必要なマイクロ秒またはミリ秒の余分なコストはありますか?どのくらいの頻度で処理シーケンスを中止する必要がありますか?
処理を途中で終了する信号をテストするための明確なチェックポイントを設定すると、シーケンスが既知の状態で終了することが保証され、何かがうまくいかない場合に正しい動作とデバッグが確認できます。
1
protected objectの中に実装することで、この操作やデータが何であれ保護することができます。
何らかのロックスキームを探しているような気がします。 Adaで保護されたオブジェクトを使用してあらゆる種類のさまざまなロック方式を実装するのはかなり簡単です。この方法では、特定のタスク間で明示的なハンドシェイクは必要ありません。
関連する問題
- 1. Skypeでの緊急警戒の実装?
- 2. Mac PGP WDE緊急復旧手順
- 3. gitでマスター上で緊急修正を行う方法は?
- 4. 緊急データの送信後にTCP接続がリセットされる
- 5. 緊急修正のためにSVNリポジトリを設定する方法は?
- 6. 緊急ダイヤル付きAndroidアプリを起動する
- 7. iPhoneで緊急電話をプログラムで行う
- 8. バックボーンjsフェッチは常にエラーfuncを呼び出します。緊急事態〜
- 9. gotoのないPythonでの緊急出口
- 10. Javaアウトオブバンド(「緊急データ」と呼ばれる)データ
- 11. 緊急モードでデータベースを設定するにはどうすればよいですか?
- 12. 緊急時に切り替えるためにmysqlデータベースのミラーを作成するには?
- 13. iPhoneの画面をロックしないで緊急電話をかける
- 14. VPSサーバーをバックアップする方法は?緊急時にもそれを復元しますか?
- 15. 非緊急でないAndroidのレイアウトID属性が奇妙なもの
- 16. Adaでブートローダにジャンプするには?
- 17. 緊急:IDEが期限切れになった後もSDKを使用する方法(FlashBuilder4Force.com)
- 18. Androidは後でユーザに通知する
- 19. Androidでの通知の遅れに関する問題
- 20. cs193p課題2
- 21. 仮想課題
- 22. facebook app、ユーザーに通知して、彼に通知する
- 23. プッシュ通知を無視するには
- 24. 通知を更新するには?
- 25. Mountain Lionの通知センターに通知を送信するコマンドラインユーティリティ
- 26. Gnome 3の通知/ポップアップ/統合通知を無効にする
- 27. 通知が通知されたときに通知を受け取る方法
- 28. メンバーシップと連携するために最適な緊急連絡先パターンを設計するにはどうすればよいですか?
- 29. iPhone上のプッシュ通知はどのユーザに通知されるのですか?
- 30. Android SMS通知の問題
人々が情報に応じた回答をする前に、より詳細な情報を提供したい場合があります。 – NWS