マルチスレッド化の大きな利点の 1 つとして、並列動作によってアプリケーションの実行が高速になることが挙げられます。
マルチスレッド化によって、ハードウェアの並列性を最大限に活用し、さらにサブシステムであるマルチプロセッサを効果的に使用できます。マルチスレッドは、対称型マルチプロセッサを十分に活用するために欠かせないものです。また、マルチスレッド化によって、演算や入出力などの処理の重複が少なくなるので、シングルプロセッサのシステムでもパフォーマンスが向上します。
マルチスレッド化の大きな利点として、次のような点を挙げることができます。
スループットの向上。1 つのプロセス内で複数の演算と入出力要求を並列処理できます。
複数のプロセッサを同時に対称的に使用して、演算および入出力の処理を行うことができます。
アプリケーションの応答性の向上。各要求ごとに別々のスレッドを使用できるので、アプリケーションが応答しなくなったり、マウスポインタの形が砂時計のまま元に戻らなくなることがなくなります。アプリケーション全体の処理が停止されたり、別の要求が完了するのを待たされたりすることがなくなります。
サーバーの応答性の向上。大規模あるいは複雑な要求、あるいは低速のクライアントによって、他のサービス要求が待たされることがなくなります。サーバーの全体のスループットが大幅に向上します。
最小限のシステム資源の使用。スレッドがシステム資源に及ぼす負荷を最低限に抑えられます。スレッドでは、従来のプロセスに比べて、生成、保持、管理するために必要なオーバーヘッドが軽減されます。
プログラム構造の簡略化。スレッドを使用すると、サーバークラスのアプリケーションやマルチメディアアプリケーションなどの複雑なアプリケーションの構造を簡略化できます。1 つ 1 つの処理を簡単なルーチンで作成できるので、複雑なプログラムの設計およびコーディングが簡単になり、より広範囲のユーザー要求に対して柔軟に対応できます。
通信の強化。スレッド同期機能を使用して、プロセス間の通信を強化できます。また、同じアドレス空間内でそれぞれ独立して動作するスレッド間で大量のデータを共有することにより、アプリケーション内のタスクどうしが高い帯域幅と短い応答時間で通信を行うことができます。