スレッドの順序を決める スケジューリングアルゴリズム 前回で解説したように、スケジューリングでは次に実行すべきスレッドを選択するために、多くの条件を調べなければならない。すぐにでも実行可能なスレッドがあったとしても、スレッドにはそれぞれ優先度があり、優先度の高いものから実行する必要がある。しかし優先度だけを見ていると、優先度の低いスレッドは、いつまでも実行されなくなってしまうという話だった。 ここで登場するのが「スケジューリングアルゴリズム」だ。簡単に言えばスケジューリングアルゴリズムとは、「次に実行すべきスレッドを選択するための手順」である。 最も簡単なスケジューリングアルゴリズムは、「ラウンドロビン」と呼ばれる方法だ(図1)。これはすべてのスレッドを円環状に並べて、順番に実行していく方法だ。時計の針が文字盤のすべての数字をさすように、スレッドを順番に実行していく。このようにしておくと、
![AMD FX向けにパッチで修正 スケジューラーが抱える難題 (1/4)](https://cdn-ak-scissors.b.st-hatena.com/image/square/6c9592a397600a5ad14cef82e4fe39d3d48fb1c5/height=288;version=1;width=512/https%3A%2F%2Fascii.jp%2Fimg%2F2011%2F07%2F28%2F301537%2Fl%2F0c30205a2db7e69c.jpg%3F20200122)