マルチスレッド
スレッドは、Windows、UNIX、OS/2などマルチタスク処理を行うOSでの処理の基本単位、CPUを割り当てる単位のこと。
マルチスレッドは、その複数のスレッドがプロセス内でアドレス空間と資源を共有し、必要に応じて複数のスレッドを同時進行で処理するため、複数のアプリケーションの同時実行、また、そのアプリケーション内での複数作業の同時実行が可能である。
プロセス内で複数のスレッドを同時に実行可能
マルチプロセスに比べてマルチタスク効率が高い
利点
サーバープログラムの並列化
入出力処理の並列化
アルゴリズムの並列化
Clone (Linux system call)
Communicating sequential processes
Computer multitasking
Multi-core (computing)
Multithreading (computer hardware)
Non-blocking algorithm
Priority inversion
Protothreads
Simultaneous multithreading
Thread pool pattern
Thread safety
Win32 Thread Information Block