Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
タスクが実行されると、実行中のキューに入れられます。スリープ状態になると、実行中のキューからデキューされます。しかし、スリープ状態のタスクのキューはありますか? ソースコードにはこれがありませんでした。
また、そのようなキューを作成したとしても、タスクがいつ強制終了され、スリープ キューから削除されるべきかをどのように知ることができるでしょうか?
誰でも私にヒントを与えることができますか?ありがとう、
Linuxでは、ブロックされた(スリープ状態の)タスクは、待機キューと呼ばれる構造でキューに入れられます。待機できるイベント(またはオブジェクト)ごとに待機キューが存在します。
したがって、単一の待機キュー(またはコアごと)はありませんが、イベントごとの待機キューがあります。カーネルコードは、タスクを明示的に待機キューに入れ、特定のイベントが到着するとタスクを削除します。たとえば、wait_event()カーネルAPIを参照してください。