【SCAG】6章 - マルチスレッドの利用
スマートクライアントアーキテクチャ設計ガイド
Chapter 6 - Using Multiple Threads
・.NETフレームワークのマルチスレッド
・マルチスレッドを利用するとき
・スレッドの生成と利用
・UIスレッドと他のスレッドとの間の相互作用を処理するためのタスクの利用
・まとめ
スレッドは基本的な実行の単位である。シングルスレッドはアプリケーションを介したシングルパスのロジックを受けて一連のアプリケーションの命令を実行する。全てのアプリケーションは少なくとも1つのスレッドを持っている。しかし、別々のロジックを実行する各スレッドをマルチスレッドにできるようにアプリケーションを設計することができる。アプリケーションでマルチスレッドを利用することによって、非常に長い、又は時間がかかるタスクをバックグラウンドで処理することができる。シングルプロセッサーを持つコンピュータ上でさえ、マルチスレッドの利用はアプリケーションのレスポンスとユーザビリティを大幅に向上させることができる。
マルチスレッドを利用するアプリケーションの開発は、ロックや同期化の問題を特に十分に検討しなければ、とても複雑なものになるだろう。いたずらに複雑でデバッグするのが難しいアプリケーションを作成せずに最大限の利点を得ることができるように、いつ、どのようにマルチスレッドが利用されるべきか、スマートクライアントアプリケーションの開発時に慎重に評価する必要がある。
本章はマルチスレッドスマートクライアントアプリケーションの開発にとって最も大切なコンセプトを検証する。スマートクライアントアプリケーションのマルチスレッドにおいて推奨される利用方法について調査し、どのようにこれらの機能を実装するかについて解説する。