4 つのスレッドを持つプロセスがあり、特定のスケジューリング アルゴリズムに従ってそれらを実行したいとします。アルゴリズムを選択し、スレッドの優先度を設定するための関数を検索して見つけましpthread_setschedparam
たsched_setschedparam
が、不明な点が 1 つpthread_setschedparam
あります。それは、スレッド名を取り、独自のスケジューリング ポリシーを設定することです。具体的には、プロセス内のすべてのスレッドは、プロセス全体に設定された 1 つのポリシーに従ってスケジュールされると考えていたためです。つまり、ポリシーを使用sched_setschedparam
して設定すると (PID を介してプロセスを参照するため)、選択したスケジューリング ポリシーに従ってそのプロセス内のスレッドが確実に実行されるということですか?
私が書いているコードは Linux 用です。boost を使用していましたが、この部分では pthread に頼らなければなりませんでした。