【初心者】Java質問・相談スレッド100【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0452デフォルトの名無しさん
2007/04/14(土) 23:23:17ロックでは解決しない問題もある
インスタンス変数はインスタンスごとに存在するが
static変数は一つしか存在しない
それをスレッドごとに書き換えるなんてまねをしたらどうなると思う?
いくらロックしたところで上書きされた値は戻ってこない
staticメソッドをマルチスレッドで使う場合はその辺りを注意する
static変数は定数として読み出しにだけ使うなら構わない
JavaにはThreadLocalというクラスが用意されているので
それを使えばstatic変数でも書き換え可能な仕組みは作れる
■ このスレッドは過去ログ倉庫に格納されています