マルチスレッドについて②
Posted: 2013年5月23日(木) 04:01
再びマルチスレッドについてよくわからないところがあったので質問させていただきます。
2つの疑問点があります。
①スレッドは関数単位で動きますが、スレッドが終了した瞬間に、
そのスレッドのスレッドハンドルは自動的にシグナル状態になるのでしょうか?
②WaitForSingleObject()は引数のハンドルがシグナル状態になるまで処理を待つ。というのはなんとなくわかるのですが、
それはつまりこの関数を呼んでいるスレッドが止まるということなのでしょうか?
そうだとしたら、その関数の動きが止まってしまいWaitForSingleObject()が動かなくなるということにはならないのでしょうか?
②の説明がしづらいです。自分は「スレッドは止まるが、引数のハンドルの状態は見ていてくれる」と解釈しています。
実際はどうなのか、よろしくお願いします。
2つの疑問点があります。
①スレッドは関数単位で動きますが、スレッドが終了した瞬間に、
そのスレッドのスレッドハンドルは自動的にシグナル状態になるのでしょうか?
②WaitForSingleObject()は引数のハンドルがシグナル状態になるまで処理を待つ。というのはなんとなくわかるのですが、
それはつまりこの関数を呼んでいるスレッドが止まるということなのでしょうか?
そうだとしたら、その関数の動きが止まってしまいWaitForSingleObject()が動かなくなるということにはならないのでしょうか?
②の説明がしづらいです。自分は「スレッドは止まるが、引数のハンドルの状態は見ていてくれる」と解釈しています。
実際はどうなのか、よろしくお願いします。