トップページ > プログラム > 2015年05月11日 > RR/yh+ms

書き込み順位&時間帯一覧

6 位/170 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000200001100000004



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
★★Java質問・相談スレッド173★★ [転載禁止]©2ch.net

書き込みレス一覧

★★Java質問・相談スレッド173★★ [転載禁止]©2ch.net
244 :デフォルトの名無しさん[sage]:2015/05/11(月) 10:39:16.55 ID:RR/yh+ms
Object lock = new Object();
synchronized (lock) {
}
で排他制御しているのですがlockオブジェクトは
staticでもないのになぜ排他制御できるんでしょうか?
★★Java質問・相談スレッド173★★ [転載禁止]©2ch.net
245 :デフォルトの名無しさん[sage]:2015/05/11(月) 10:52:05.77 ID:RR/yh+ms
あー
わかった。
String lock = "";
synchronized (lock) {
}
だからだ。こんなのあり?
★★Java質問・相談スレッド173★★ [転載禁止]©2ch.net
251 :デフォルトの名無しさん[sage]:2015/05/11(月) 15:55:26.02 ID:RR/yh+ms
>>247
そこが疑問なんです。リテラルだからstaticみたいなものだから
そう書いてるのか。それをわかってて書いてるのか
たまたまそれで動いたからよしとしているのか。
自分なら素直に
static Object lock = new Object();
と書くのでよく使われるテクニックなのでしょうか。
★★Java質問・相談スレッド173★★ [転載禁止]©2ch.net
253 :デフォルトの名無しさん[sage]:2015/05/11(月) 16:28:56.64 ID:RR/yh+ms
>>252
そのようですね。うーん。なぜこんなコードを書いたのか。
謎ですが修正しておきます。ありがとうございました。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。