スレッドとは、
CPU利用の単位。
プロセスに比べて、プログラムを実行するときのコンテキスト情報が最小で済むので切り替えが早くなり、ライトウェイトプロセスとも呼ばれる。スレッド(thread)は、thread of execution(実行の脈絡)という言葉を省略したものである。
プログラミングの観点からみると、
アプリケーションの処理の「実行の脈絡」は1つでないことが多い。これをシングルスレッドで実現しようとすると
シグナルや
タイマーを駆使してコーディングすることになる。また、複数の
プロセスに分割して
プロセス間通信で協調動作させるという方法もある。しかし、いずれの場合もそれらの機能を使うための余分な、本来の
アルゴリズムと関係ないコーディングが必要となる。スレッドを使用したプログラミングは本来のアルゴリズムに集中しやすくなり、プログラムの構造が改善されるという効果がある。
Wikipedia.orgをもっと見ると…