スレッドの暗黙的利用
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/16 09:55 UTC 版)
「スレッド (コンピュータ)」の記事における「スレッドの暗黙的利用」の解説
マルチスレッドのプログラミングは前述のように、シングルスレッド前提のプログラミングと比べて難易度が高い。マルチスレッドの動作は非決定論的であり、慎重にプログラミングしなければ、タイミングによって発生したりしなかったりする厄介な異常動作や不具合を引き起こすこともある。マルチスレッド環境におけるバグは、しばしば原因特定が困難となる。 一般的なアプリケーションプログラミングでは、スレッドを明示的に起動して利用することは少ない。代わりに、並列処理や並行処理のバックエンドとしてスレッドを暗黙的に利用する、上位レベルのAPIを利用することが多い。例としてOpenMPや、.NETのタスク並列ライブラリ(英語版) (TPL) などが挙げられる。Future パターンをサポートするプログラミング環境では、並行処理の実行にスレッドを利用するが、煩雑なスレッドの操作をほとんど意識することなく並行処理を効率的に記述することができる。また、これらはAPI呼び出しのたびにスレッドを起動/終了するのではなく、あらかじめいくつかのスレッドを起動しておいて再利用することのできるスレッドプールを内部で使用していることが多い。上位レベルのAPIを利用することで、オーバーヘッドを低減し、また実行環境のハードウェア構成を意識することなく、環境に適した数のスレッドを活用することが可能となる。
※この「スレッドの暗黙的利用」の解説は、「スレッド (コンピュータ)」の解説の一部です。
「スレッドの暗黙的利用」を含む「スレッド (コンピュータ)」の記事については、「スレッド (コンピュータ)」の概要を参照ください。
- スレッドの暗黙的利用のページへのリンク