none
threadでのデータの受け渡し方法 RRS feed

  • 質問

  • 子のスレッドから親のクラスにデータを渡すことは可能でしょうか?

    また、子のスレッドから子のスレッドに値を渡す事も可能でしょうか?

     

    1.親 -> 子スレッド

    2.子スレッド <- 子スレッド

    3.子スレッド -> 親

     

    環境:

    vc++ 2005  C++ / CLR です。

     

     

    説明が下手かも知れませんが、ご教授よろしくお願いします。

    2007年8月8日 0:03

すべての返信

  • 諸農です。

     

     ガンバルマン さんからの引用

    子のスレッドから親のクラスにデータを渡すことは可能でしょうか?

    また、子のスレッドから子のスレッドに値を渡す事も可能でしょうか?

     

    スレッドを作成する側からスレッドにオブジェクトを引き渡すことが出来ます。

    「スレッドを作成し、開始時にデータを渡す」

    http://msdn2.microsoft.com/ja-jp/library/ts553s52(VS.80).aspx

     

    スレッドから親に渡すためには親の参照、もしくは親と共有するデータへの参照が必要になると思うので、上記の方法でスレッドにデータを引き渡してみてはいかがでしょうか。

    スレッド間のデータ共有については同期合わせなどが難しいと思いますが、基本的には共有データを参照できるようにしておけばいいと思います。

    「マルチコアCPUのための並列プログラミング―並列処理&マルチスレッド入門」と言う書籍が参考になると思います。

    2007年8月8日 4:25