LoginSignup
0
0

マルチスレッド

Last updated at Posted at 2024-05-22

プロセス内に複数の流れを持ちます。
...
一つのスレッドしか持たないプログラムをシングルスレッドプログラム、2つ以上のスレッドを持つプログラムをマルチスレッドプログラムと呼びます。

長所

  • ページテーブルのコピーが不要なため、生成時間が短い
  • 様々なリソースを同じプロセス内の全スレッド噛んで共有するため、メモリをはじめとしたリソース消費量が少ない
  • 全スレッド間でメモリを共有するため、見かけ上の協調動作がしやすい。

気づき

協調動作とはなんだろう

短所

  • 一つのスレッドの障害が全スレッドに影響する。例えば一つのスレッドが不正なアドレスを参照して以上終了すると、プロセス全体が以上終了する
  • 各スレッドが呼び出す処理がマルチスレッドプログラムから呼び出し良いかどうかを熟知しておく必要がある。例えば内部的にグローバル変数を排他制御なしにアクセスしている処理は、スレッドセーフではい。この場合は、同時に一つのスレッドからしか当該処理を 呼ばないようにプログラマが制御しないければならない

気づき

スレッドを意識したプログラムをしたことがないのでいつか触れるのだろう。

出典

感想

この後のカーネルスレッド、ユーザスレッドに違いがいまいち理解できないので飛ばす

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0