掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
スレッドから戻り値を受け取るには? (ID:4037)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
スレッドのことについて、補足。 スレッドを分けるというのは、たとえば一つの作業を、二人の人が分かれてやるようなものです。 一人の人(Aさんとしましょうか)が作業をしていると、とても時間がかかってしまう。 だから、もう一人の人(Bさんとします)に、作業をいくつか分けて、やってもらいます。 この分けられた作業が、スレッドオブジェクトにかかれた命令文ですね。 ですから、AさんはBさんの作業を待ってるその間、当然何かをやっているべきなんです。 Aさんがその間暇をもてあましているんだとすれば、Bさんに作業を任せたりせずに、自分でやってしまったほうがいい そういうことです。 (そもそも、Bさんに作業を頼むという時間が、無駄になりかねません) さて、データの受け渡し方法ですが。 AさんとBさんは、同じ場所で作業をしているわけではないとします。 たとえば、別々の電車に乗ってるとします。 AさんとBさんの間でなにか、ものをやり取りするには?というはなしです。 (ここで、"電話を使えばいいじゃん"とか、そういうのはナシで^^;) このばあい、やっぱりどこか同じ駅で電車を止めて、そこでやり取りしなくてはいけません。 それが"同期"というものです。 つまり、Aさん(メインスレッド)とBさん(生成したスレッド)で、情報をやり取りするには、 いったん電車を、同じ駅で止めてもらうようなこと、"同期(Syncronizeメソッド)"が必要になる。というわけです。 電車が止まっている間ならば、AさんとBさんは自由にやり取りできます。 なので、その間に駅で呼び出し(イベントを起こす)するか、 あらかじめ場所を決めておいて、情報を渡す(スレッドのプロパティとする)か とか、するわけです。 メッセージを飛ばすというのは、たぶんイベントを起こすというのとほぼ同じじゃないでしょうか? 普通のイベントは、メッセージを受け取ったオブジェクトが、対応したイベントを起こしているだけですから。 後半特に、悪い例でした(^^ゞ練ってなかったもので、ちょっとこじつけ気味かもしれません。 まあ、わかったでしょうか? あとあとどこかに書くときには、もうちょっと推敲しておきます(-_-;)
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.