「マルチスレッド」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
'''マルチスレッド'''([[英語]]:multi thread)とは、ひとつの[[プロセス]]内で複数の[[スレッド]]を使用することである。 | '''マルチスレッド'''([[英語]]:multi thread)とは、ひとつの[[プロセス]]内で複数の[[スレッド]]を使用することである。 | ||
− | == | + | == 概要 == |
− | + | マルチスレッドとは、[[バグ]]の温床であり、[[デバッグ]]が非常に難しいのが特徴である。そのため[[業務アプリ]]の世界では[[禁忌]]であり基本的に登場しない技術である。 | |
− | |||
− | |||
− | + | 初期の[[Windows]]では全てがスレッドであった。 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | 初期の[[Windows]] | ||
[[UNIX]]における[[fork]]の感覚で[[プロセス]]を作ったつもりでも実際は[[スレッド]]が作られた。 | [[UNIX]]における[[fork]]の感覚で[[プロセス]]を作ったつもりでも実際は[[スレッド]]が作られた。 | ||
− | + | Windowsという1つのプロセスの中で、アプリという子スレッドが次々と生まれたのである。 | |
そのため[[プログラム]]が少しでも[[バグ]]ると[[OS]]を巻き込み[[クラッシュ]]した。 | そのため[[プログラム]]が少しでも[[バグ]]ると[[OS]]を巻き込み[[クラッシュ]]した。 | ||
一方でマルチスレッドでも比較的安全になるような工夫も多く生まれ、後のマルチスレッド流行時には積み重ねた対応度の良さが目立った。 | 一方でマルチスレッドでも比較的安全になるような工夫も多く生まれ、後のマルチスレッド流行時には積み重ねた対応度の良さが目立った。 | ||
+ | |||
+ | ==応用例== | ||
+ | * [[バックグラウンド]]で重い処理をしても、[[UI]]の動作を止めない([[応答なし]]にならない)ことができる。 | ||
+ | * [[BOINC]]の計算をしながら[[動画]]を見たり[[webブラウズ]]をしたりできるのもマルチスレッドの一種。 | ||
==関連項目== | ==関連項目== | ||
33行目: | 19行目: | ||
* [[マルチコア]] | * [[マルチコア]] | ||
* [[OpenMP]] | * [[OpenMP]] | ||
+ | |||
+ | == 参考文献 == | ||
+ | {{reflist}} | ||
+ | |||
+ | {{stub}} |