• ベストアンサー

java のスレッドについて

java のスレッドについて javaでスレッドを作って処理をさせたいと思います。 メインのクラスでスレッドAを呼び出し、スレッドAで計算をしてその結果をメインのクラスで利用したい場合、一番簡単な方法は何でしょうか? なお、メインのクラスは、 while (Thread.isAlive()); な感じでスレッドが終わるまで処理を止めておきたいと思います。 簡単なコードを書いていただけないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

Javaのスレッドからの結果の返し方は http://www.google.com/search?q=java+thread+%E6%88%BB%E3%82%8A%E5%80%A4 で出てくるページをいくつか眺めてみてください。 しかし、通信のプログラムを走らせるのだろうが何だろうが、メインのクラスがスレッドの終了をただ待つだけならわざわざスレッドにする理由はありません。ANo.1の方と同意見です。 複数のスレッドを同時に走らせるのであれば意味があるでしょうけど、その場合でもスレッドの終了を待つのにはThread#join()を使うべきです。 ThreadクラスではなくてExecutorServiceを使う手もあります。

その他の回答 (1)

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

止めておくなら普通に関数呼び出しでいいんじゃないですか? あえてスレッドにする意図がわかりません。 while (Thread.isAlive()); なんかで止めるとサーバー(プログラムが動くPC)がCPU100%になって動かなくなりますよ。

nakisan2011_12
質問者

補足

実はスレッド先では通信のプログラムが走っているんです、 その通信が終わった後に受け取ったデータを処理したくてこのような質問をしてみました。

関連するQ&A