探検
★★Java質問・相談スレッド182★★
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (アウアウウー Sa73-AAco [106.132.135.194])
2018/11/19(月) 11:37:06.10ID:C68x9bSiaプログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
(p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。
前スレ
★★Java質問・相談スレッド181★★
https://mevius.5ch.net/test/read.cgi/tech/1518252580/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
2デフォルトの名無しさん (ワッチョイ ff87-ASYV [115.176.100.236])
2018/11/20(火) 03:38:42.96ID:JZJLduoZ0 カキコ
3デフォルトの名無しさん (ワッチョイ ff51-A3/R [123.1.86.88])
2018/11/24(土) 10:37:52.52ID:6yt0KLFG0 Threadが完了しているかはどうやって調べるんですか?
isInterrupted()とisAliveはあスレッド終了時falseでした。
isInterrupted()とisAliveはあスレッド終了時falseでした。
4デフォルトの名無しさん (ワッチョイ 6f9f-zhOP [175.134.57.7])
2018/11/24(土) 16:28:54.46ID:Q9o1GKtC05デフォルトの名無しさん (ワッチョイ ff51-A3/R [123.1.86.88])
2018/11/24(土) 17:16:53.81ID:6yt0KLFG0 どうやらisAlive()はstart()前はfalse,start()後実行中はtrue,完了したらfalseのようです。
start前と完了後を区別するにはgetStateが良いようですね
start前と完了後を区別するにはgetStateが良いようですね
6デフォルトの名無しさん (ワッチョイ ff51-A3/R [123.1.86.88])
2018/11/25(日) 08:53:36.37ID:vfhmRXQZ0 スレッド1がメンバー変数Aを更新、そのあとメンバー変数Bを更新
スレッド2から見て、Bの更新が見えるのにAが見えない、ということはありえますか?
スレッド2から見て、Bの更新が見えるのにAが見えない、ということはありえますか?
7デフォルトの名無しさん (ワッチョイ cf80-fhi1 [153.181.220.179])
2018/11/25(日) 10:55:13.27ID:bdma9Nzw0 マルチスレッドは前後関係が決まらないから、確実なものはない。
待ち合わせでもしていれば、できるかも
デッドロックもあるし、10年以上開発していないなら無理。
資源が共有されるから、素人がプログラミングできるはずがない!
待ち合わせでもしていれば、できるかも
デッドロックもあるし、10年以上開発していないなら無理。
資源が共有されるから、素人がプログラミングできるはずがない!
8デフォルトの名無しさん (ワッチョイ 6f8a-Kv/S [223.218.154.127])
2018/11/25(日) 11:39:22.30ID:0ClRa5n60 スレッドは最初から並列、同期を考えてプログラムするだろう。初心者には無理
9デフォルトの名無しさん (ワッチョイ 6f9f-zhOP [175.134.57.7])
2018/11/25(日) 16:50:34.64ID:k7/W79Is0 >>6
その変数Aが volatile でなければ読む側のスレッドで動いているコードによっては起こり得ると思う。
(もっと他順に更新順序と読む順序の問題でそうなる事もあるが)。
かといって volatile にしただけで安心してはいけない。更にロック掛けた上で読み出した方が良い。
Java なら synchronized 使うとかだな。
その変数Aが volatile でなければ読む側のスレッドで動いているコードによっては起こり得ると思う。
(もっと他順に更新順序と読む順序の問題でそうなる事もあるが)。
かといって volatile にしただけで安心してはいけない。更にロック掛けた上で読み出した方が良い。
Java なら synchronized 使うとかだな。
10デフォルトの名無しさん (アウアウカー Sa87-Iz74 [182.251.154.85])
2018/11/26(月) 23:37:17.15ID:iInmVawEa volatileはそのAとBの間に制約があるなら使えないし、A、Bが自身の制約になるときもか。あと他の変数の不変条件になってるなら使えないよ。
ていうかvolatile変数の変更が外から見えないならロックいらんだろ。
ていうかvolatile変数の変更が外から見えないならロックいらんだろ。
11デフォルトの名無しさん (ワッチョイ 5305-XNyg [210.132.144.78])
2018/11/27(火) 00:38:32.20ID:2AqLChXV0 何を言ってるのかわからん。
12デフォルトの名無しさん (ワッチョイ 6f9f-KQkZ [175.134.57.7])
2018/11/27(火) 01:26:54.27ID:IxTjeZ9T0 >>10
制約って?具体的にどういう状態?
privateにして外からgetするメソッドを呼ぶだけのいわゆるプロパティにしてしまえばマシにはなるかもな。
しかしそれだけだとA,Bを個別に読んだら一方しか更新されてない事は起こりうるのでは?
更新する側がロックせずに一つづつ更新している最中に一つづつ読んでしまえば起こりうるよね?
制約って?具体的にどういう状態?
privateにして外からgetするメソッドを呼ぶだけのいわゆるプロパティにしてしまえばマシにはなるかもな。
しかしそれだけだとA,Bを個別に読んだら一方しか更新されてない事は起こりうるのでは?
更新する側がロックせずに一つづつ更新している最中に一つづつ読んでしまえば起こりうるよね?
13デフォルトの名無しさん (ワッチョイ ff51-A3/R [123.1.86.88])
2018/11/27(火) 10:43:53.15ID:Kxtwr65F0 1スレッド書き込み、マルチスレッド読み込みの場合、
並行処理による問題が発生する可能性はありますか?
例えばHashMapにアクセスするとして。
並行処理による問題が発生する可能性はありますか?
例えばHashMapにアクセスするとして。
14デフォルトの名無しさん (ワッチョイ cf80-fhi1 [153.181.220.179])
2018/11/27(火) 10:50:21.39ID:DSo9/Qg/0 1. スレッドA には、Xが存在しない
2. ここで書き込みスレッドが、X を書き込むと、
3. スレッドB には、Xが存在する
2. ここで書き込みスレッドが、X を書き込むと、
3. スレッドB には、Xが存在する
15デフォルトの名無しさん (アウアウウー Sa27-ml8p [106.132.137.248])
2018/11/27(火) 12:39:58.02ID:gTSgzwA4a >>13
あります。
あります。
16デフォルトの名無しさん (ワッチョイ b3af-OcZv [122.24.68.153])
2018/11/27(火) 15:26:01.15ID:r2rVvRkR0 ありまぁ〜す
17デフォルトの名無しさん (ワッチョイ 6f9f-zhOP [175.134.57.7])
2018/11/28(水) 01:33:35.79ID:BkKDQWNJ018デフォルトの名無しさん (アウアウカー Sacf-ILaU [182.251.220.71])
2018/11/29(木) 21:49:08.42ID:wn8bMma4a 排他ロックが無駄だからいちいち同期するなよ。
concurrent collectionつかえ。その用途ならConcurrentHashMapがあるだろ。
concurrent collectionつかえ。その用途ならConcurrentHashMapがあるだろ。
19デフォルトの名無しさん (ワッチョイ 22a6-3M3s [123.48.217.134])
2018/12/06(木) 14:31:29.56ID:ncTdmVKO0 ラムダの中でローカル変数のオブジェクトを参照している場合、
そのメソッドを抜けた後そのローカル変数を参照する事は安全ですか?
//in some method
Obj local = new Obj();
GuiPart gui = new GuiPart((event)->local.method(event));
return;//この後ラムダがイベント処理で呼ばれた場合、localは参照可能か?
そのメソッドを抜けた後そのローカル変数を参照する事は安全ですか?
//in some method
Obj local = new Obj();
GuiPart gui = new GuiPart((event)->local.method(event));
return;//この後ラムダがイベント処理で呼ばれた場合、localは参照可能か?
20デフォルトの名無しさん (ブーイモ MMb3-IAAP [210.138.208.29])
2018/12/06(木) 14:37:21.87ID:U/FtrhZGM21デフォルトの名無しさん (ワッチョイ 3be3-OBpN [218.33.217.200])
2018/12/06(木) 15:00:26.25ID:fFxLBqGn0 逆に気を付けなければならないのは、
非同期処理などで、外側のオブジェクト(エンクロージングインスタンス)がいつまでも破棄されなくなる可能性があること。
非同期処理などで、外側のオブジェクト(エンクロージングインスタンス)がいつまでも破棄されなくなる可能性があること。
22デフォルトの名無しさん (ワッチョイ 8fb9-aoeu [180.178.88.6])
2018/12/07(金) 02:12:41.95ID:5Mie+W080 匿名クラス(無名クラス)の型について質問です。
ArrayListに格納した後、get()で取り出して使いたいのですが
型名が分からずキャストできません。
どなたか回答をお願いします。
ArrayListに格納した後、get()で取り出して使いたいのですが
型名が分からずキャストできません。
どなたか回答をお願いします。
23デフォルトの名無しさん (ワッチョイ 4e9f-n9Ol [175.134.57.7])
2018/12/07(金) 02:50:49.80ID:4kVuFzeP0 >>22
List にキャストすればいいのでは?
List にキャストすればいいのでは?
24デフォルトの名無しさん (ワッチョイ 17b6-IAAP [220.208.88.114])
2018/12/07(金) 04:50:43.67ID:NzONXxAO0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か ★3 [ぐれ★]
- 京都のホテル大幅値下げ 訪日中国人客、年1000万人目前で急ブレーキ [蚤の市★]
- 「中国人の訪日熱は冷めた」 人気旅行先から日本外れる 14日で自粛呼びかけ1カ月 ★3 [蚤の市★]
- 「今の女性はルッキズム」は本当なのか? 若い世代が結婚相手に求める"本当の条件" [少考さん★]
- 現場からは悲鳴、母親からは「高い」「性犯罪が怖い」の声も…高市総理がどうしても実現したい政策「ベビーシッターの利用促進」 [ぐれ★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★3 [蚤の市★]
- 高市のあの失言を擁護するために、日本のマスコミは反中プロパガンダを流してる。異常すぎて見てられないよ [805596214]
- 【実況】博衣こよりのえちえちドラクエ1&2リメイク🧪
- クリスマスの「予定なし」54% 貧困ジャップで進む季節のイベント離れ… [667744927]
- 【悲報】ユニクロのダウンを洗った結果wwwwwwwwwwwwwwwwwwww [802034645]
- 秋田でクマに柴犬が惨殺→犬の外飼いに批判が殺到「クマが出る地域で頑なに外で犬を飼う理由が理解できない!」高市 [357264179]
- 【高市悲報】NHKニュース「発狂している中国に対して、日本は至って冷静」😳 [762037879]
