スレッドの休止・中断
1)sleep()
* 指定した時間だけ現在実行中のスレッドを休止させる
2)yield()
* 現在処理中のスレッドを一時休止し、 他のスレッドに実行の機会を与える
3)interrupt()
* 休止中のスレッドに割り込みを入れるメソッド
処理を一時停止するには
* Thread.sleep() を使う * 非スレッド環境でも使える
サンプル
Thread.sleep(60 * 1000L); // 60sec処理を止める
参考文献
http://d.hatena.ne.jp/konchi/20090911/1252646115
InterruptedException / 割り込み例外について
Interrupt = 中断する * 自分の作成しているシステムの仕様・設計にあった処理を行う必要がある => 「何もしない」or「無視して処理を進める」など * 意図せずに、通常の例外と同じ処理にしないように注意
参考文献
http://www1.bbiq.jp/takeharu/java108.html
http://d.hatena.ne.jp/Nagise/20111130/1322628285
スレッドの同期
1)wait()
* 現在のスレッドを待機させる。
2)notify()
* wait()によって待機中であるスレッドの1つを再開。 プログラム側から指定することはできない。
3)notifyAll()
* wait()によって待機中であるすべてのスレッドを再開。
参考文献
http://www.gamesite8.com/archives/575489.html
関連記事
【デザインパターン】【非同期】Guarded Suspensionパターン
【Java】例外について ~Exception~