Skip to content
EntityQ213092· pop 40· linked from 1,096 articles

スレッド

Sign in to save

Also known as daemon thread, execution thread, computer thread, computing thread, software thread, thread of execution

CPU利用の単位

Article · 日本語

スレッド(thread)とは、特定の処理を行うための一貫性のある命令の流れのことであり、プロセッサ利用の最小単位。メインメモリ上のデータを内包するプロセスに比べて、プログラムを実行するときのコンテキスト情報が最小で済むので切り替えが速くなる。スレッドはプロセス内で動作するという関係性がある。スレッドは、thread of execution(実行の脈絡)という言葉を省略したものである。複数のスレッドを用意することで、並列処理が実現できる(この手法をマルチスレッドプログラミングと呼ぶ)。 プログラミングの観点からみると、アプリケーションの処理の「実行の脈絡」は1つでないことが多い。例えば即応性が求められるGUIを描画したりユーザーと対話したりするためのイベントループを実行するフローと、処理に時間のかかるネットワークアクセスやファイルI/O、低速ハードウェアとの通信などを実行するフローは完全に分離してしまったほうが都合がよい。これを単一のコンテキスト(シングルスレッド)上で実現しようとするとシグナルやタイマーを駆使してコーディングすることになる。あるいは、複数のプロセスに分割してプロセス間通信で協調動作させるという方法もある。しかし、いずれの場合もそれらの機能を使うための余分な、本来のアルゴリズムと関係ないコーディングが必要となる。スレッドを使用したプログラミングは本来のアルゴリズム(アプリケーションロジック)に集中しやすくなり、プログラムの構造が改善されるという効果がある。

Abstract from DBpedia / Wikipedia · CC BY-SA