Java初心者のためのスレッドです。
※前スレ
Java入門・初心者質問スレ Part.8
http://mevius.5ch.net/test/read.cgi/tech/1528370228/
探検
Java入門・初心者質問スレ Part.9
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/03/09(土) 23:59:15.92ID:ACok0wnJ746デフォルトの名無しさん
2020/03/24(火) 21:41:53.84ID:iThMGLi0 アンロード君
NotClassFound君
同期化君
キチガイほら吹き3人衆
息を吐くように嘘を教えるとかおっそろしいでホンマ
NotClassFound君
同期化君
キチガイほら吹き3人衆
息を吐くように嘘を教えるとかおっそろしいでホンマ
747デフォルトの名無しさん
2020/03/24(火) 21:46:34.31ID:h4RLamPb >>734
一応だけどクラス変数はインスタンスを作らなくても使用できる変数で
clipはインスタンス変数というのが適当だよ
君の書き込みからはたまに知性が垣間見れるから多分書き間違っただけだろうけど
初心者スレなんで真に受ける人がいるかもしれないから一応
データ競合があるのは事実でその辺りも含めてこのソースをどう修正するかは
腕の見せどころではあるね
一応だけどクラス変数はインスタンスを作らなくても使用できる変数で
clipはインスタンス変数というのが適当だよ
君の書き込みからはたまに知性が垣間見れるから多分書き間違っただけだろうけど
初心者スレなんで真に受ける人がいるかもしれないから一応
データ競合があるのは事実でその辺りも含めてこのソースをどう修正するかは
腕の見せどころではあるね
748デフォルトの名無しさん
2020/03/24(火) 21:49:47.16ID:iThMGLi0 >一応だけどクラス変数はインスタンスを作らなくても使用できる変数で
はい、アホ
おまえさぁ、アホのくせになんでレスつけるの?アンロード君か?
何が「このソースをどう修正するかは腕の見せどころではあるね!(キリッ!!!」 だよアホ
1分で終わるわアホ
ほんまキチガイ糞馬鹿ガイジの巣窟やな
はい、アホ
おまえさぁ、アホのくせになんでレスつけるの?アンロード君か?
何が「このソースをどう修正するかは腕の見せどころではあるね!(キリッ!!!」 だよアホ
1分で終わるわアホ
ほんまキチガイ糞馬鹿ガイジの巣窟やな
749デフォルトの名無しさん
2020/03/24(火) 21:52:28.37ID:h4RLamPb750デフォルトの名無しさん
2020/03/24(火) 21:55:44.80ID:cFvopTvT 違う、こいつ ID:iThMGLi0 の言ってることが間違い
毎回インスタンス作っても出来るけど、何回も再生するのに何回もインスタンス作って open して play するのは適当じゃない
一回 open して、特に小さい音声ファイルの場合は、ロード1回したら使い回さないと、再生はじめが遅くなるしパフォーマンスは悪い
そもそもこれは1度 new して初期化したら 使い回すっていうそういう設計のクラスでしょ
クラス変数とインスタンス変数の違いも知らない人間の言う言葉を信じてはいけない
毎回インスタンス作っても出来るけど、何回も再生するのに何回もインスタンス作って open して play するのは適当じゃない
一回 open して、特に小さい音声ファイルの場合は、ロード1回したら使い回さないと、再生はじめが遅くなるしパフォーマンスは悪い
そもそもこれは1度 new して初期化したら 使い回すっていうそういう設計のクラスでしょ
クラス変数とインスタンス変数の違いも知らない人間の言う言葉を信じてはいけない
751デフォルトの名無しさん
2020/03/24(火) 21:57:09.96ID:iThMGLi0 初心者未満はもう文章書くのやめよう
な?
もう書いてることの全てが間違ってるからさ
入門書1億万回読めやカス
な?
もう書いてることの全てが間違ってるからさ
入門書1億万回読めやカス
752デフォルトの名無しさん
2020/03/24(火) 21:57:55.03ID:h4RLamPb753デフォルトの名無しさん
2020/03/24(火) 21:58:26.04ID:cFvopTvT ほらね、技術的なことを書いてボロが出たら関係ないこと言い始めたでしょ
上のレス読んでてもこいつずっとこう
上のレス読んでてもこいつずっとこう
754デフォルトの名無しさん
2020/03/24(火) 21:58:38.75ID:iThMGLi0 バカだから180℃間違った解釈でギャーギャー「俺が正しいんだ!(キリィイイイ!!」って喚いてんだよね
ほんと死んでくれゴミ
二度と回答するなアホ
ほんと死んでくれゴミ
二度と回答するなアホ
755デフォルトの名無しさん
2020/03/24(火) 21:59:53.70ID:h4RLamPb >>754
入門書1億万回読んだならわかると思うんだけどクラス変数とインスタンス変数は違うよね?
入門書1億万回読んだならわかると思うんだけどクラス変数とインスタンス変数は違うよね?
756デフォルトの名無しさん
2020/03/24(火) 22:00:17.86ID:iThMGLi0 見事にアンロード君と同し病気発症しててワロタwwwww
ほんまモンスターガイジだなコイツw
バカ通りこしてキモすぎるからマジで死ねってw
アホ
ほんまモンスターガイジだなコイツw
バカ通りこしてキモすぎるからマジで死ねってw
アホ
757デフォルトの名無しさん
2020/03/24(火) 22:01:09.24ID:h4RLamPb758デフォルトの名無しさん
2020/03/24(火) 22:02:26.56ID:iThMGLi0 こんな感じでソースコードをまともに読めない初心者未満のガイジに
正しい答えを教えても全く意味がないことがよくわかる良い例だな
何も成長しないんだよ
THE モンスター低能ガイジ
正しい答えを教えても全く意味がないことがよくわかる良い例だな
何も成長しないんだよ
THE モンスター低能ガイジ
759デフォルトの名無しさん
2020/03/24(火) 22:03:55.36ID:h4RLamPb760デフォルトの名無しさん
2020/03/24(火) 22:05:00.34ID:cFvopTvT さすがにインスタンス変数の意味でクラス変数って言っちゃうとか擁護のしようがない
とりあえずそこのところは俺も気になるから徹底的に追求してあげてくれ
こういう風に関係ない罵詈雑言書き連ねてても、今後このスレにいる以上はずっと追求し続けてあげてくれ
とりあえずそこのところは俺も気になるから徹底的に追求してあげてくれ
こういう風に関係ない罵詈雑言書き連ねてても、今後このスレにいる以上はずっと追求し続けてあげてくれ
761デフォルトの名無しさん
2020/03/24(火) 22:05:37.46ID:iThMGLi0 スコープが違うだけで実態がなくても使えることにはならない
エラー出ても使えるって言い張るガイジなら勝手にどうぞ
くだらねーことを何回も書いてホントきしょくわるいね
アホ
エラー出ても使えるって言い張るガイジなら勝手にどうぞ
くだらねーことを何回も書いてホントきしょくわるいね
アホ
762デフォルトの名無しさん
2020/03/24(火) 22:06:36.62ID:cFvopTvT 君はあだ名つけるの好きみたいだからそれに倣うけど、君の名前はクラス変数君ってことでいい?
763デフォルトの名無しさん
2020/03/24(火) 22:07:00.61ID:h4RLamPb >>761
クラス変数とインスタンス変数は違うよね?
クラス変数とインスタンス変数は違うよね?
764デフォルトの名無しさん
2020/03/24(火) 22:07:43.07ID:iThMGLi0 >そもそもこれは1度 new して初期化したら 使い回すっていうそういう設計のクラスでしょ
これもソースコード読めな過ぎの馬鹿文章
ほんとおまえさぁ、ただのほら吹き糞馬鹿なんだからもう意地張ったり背伸びするのやめたら?w
全てが間違っててアホなんだよお前のレスはw
アホ
これもソースコード読めな過ぎの馬鹿文章
ほんとおまえさぁ、ただのほら吹き糞馬鹿なんだからもう意地張ったり背伸びするのやめたら?w
全てが間違っててアホなんだよお前のレスはw
アホ
765デフォルトの名無しさん
2020/03/24(火) 22:07:54.24ID:h4RLamPb >>762
もうこのスレのアイドルだから姫でもいんじゃないかな
もうこのスレのアイドルだから姫でもいんじゃないかな
766デフォルトの名無しさん
2020/03/24(火) 22:09:26.60ID:iThMGLi0 別に毎回newしなくてもエラーでないしw
ほんとソースコード読めないアホ
消えろゴミ
ほんとソースコード読めないアホ
消えろゴミ
767デフォルトの名無しさん
2020/03/24(火) 22:10:04.73ID:cFvopTvT 間違えてる間違えてるってそればっかだけど、間違えてるなら何が間違えてるか指摘しなさいよ
クラス変数とインスタンス変数の違いは丁寧に教えてもらってでしょ君
お礼言わない人嫌いだったよね?
ちゃんとお礼言いなよ
クラス変数とインスタンス変数の違いは丁寧に教えてもらってでしょ君
お礼言わない人嫌いだったよね?
ちゃんとお礼言いなよ
768デフォルトの名無しさん
2020/03/24(火) 22:14:06.44ID:iThMGLi0 とりあえずホラ吹きガイジのお前は二度と回答側にまわらないように
一生ROMってろ
一生ROMってろ
769デフォルトの名無しさん
2020/03/24(火) 22:18:28.02ID:cFvopTvT >>766
あなたの指摘は、
> clip を "クラス変数www" で共有してるから
って言うものでしょ?
clip を共有しないということは、毎回 Clip を new することに他ならないじゃないですか
共有せずに、毎回 new もせずに、clip を使って再生する方法を後学のために教えてもらえますか?
あなたの指摘は、
> clip を "クラス変数www" で共有してるから
って言うものでしょ?
clip を共有しないということは、毎回 Clip を new することに他ならないじゃないですか
共有せずに、毎回 new もせずに、clip を使って再生する方法を後学のために教えてもらえますか?
770デフォルトの名無しさん
2020/03/24(火) 22:20:32.16ID:iThMGLi0 グ グ れ カ ス 糞 馬 鹿
771デフォルトの名無しさん
2020/03/24(火) 22:22:41.32ID:cFvopTvT さすがに、クラス変数とインスタンス変数の違いも知らない初心者とバレた以上、その逃げ方は滑稽でしかない
772デフォルトの名無しさん
2020/03/24(火) 22:26:38.82ID:iThMGLi0 聖者ワイ「これこれはこうだからこうなる。わかったか池沼よ?」
池沼(ID:cFvopTvT)「うるせー!俺が正しいんだ!ボケ!」
池沼(ID:cFvopTvT)「後学のために教えてもらえますか?(ブヒッw」
聖者ワイ「消えろゴミ」
逃げるも糞もおまえは馬鹿すぎ&ほら吹き&無様&低能
ソースコードまともに読めるようになってから喚け低能糞ゴミキッズ
きしょくわりぃ
池沼(ID:cFvopTvT)「うるせー!俺が正しいんだ!ボケ!」
池沼(ID:cFvopTvT)「後学のために教えてもらえますか?(ブヒッw」
聖者ワイ「消えろゴミ」
逃げるも糞もおまえは馬鹿すぎ&ほら吹き&無様&低能
ソースコードまともに読めるようになってから喚け低能糞ゴミキッズ
きしょくわりぃ
773デフォルトの名無しさん
2020/03/24(火) 22:29:36.89ID:cFvopTvT >> 753 以下ループで
そういう中身のない罵詈雑言系はもう良いっす
そういう中身のない罵詈雑言系はもう良いっす
774デフォルトの名無しさん
2020/03/24(火) 22:30:30.16ID:iThMGLi0 己の醜態を関係ないネタで勝手に知らない扱いして
喚き散らしてなかったことにしようとしてる無様な姿は酷すぎるし
レスせずに消えればいいものを
アンロード君といいこの手の醜態晒すキチガイはどういう脳みそしてんだろうな
マジで
さすがにきしょすぎて引くわ
喚き散らしてなかったことにしようとしてる無様な姿は酷すぎるし
レスせずに消えればいいものを
アンロード君といいこの手の醜態晒すキチガイはどういう脳みそしてんだろうな
マジで
さすがにきしょすぎて引くわ
775デフォルトの名無しさん
2020/03/24(火) 22:32:20.44ID:iThMGLi0 今回はお前があまりに頭が悪すぎる知ったかほら吹きレスをつけるから
間接的に質問者に答えを教えることになったが
おまえみたいゴミに教えることなんて一つもないよ
脳みそ腐ってんのか?
間接的に質問者に答えを教えることになったが
おまえみたいゴミに教えることなんて一つもないよ
脳みそ腐ってんのか?
776デフォルトの名無しさん
2020/03/24(火) 23:32:52.26ID:j8MbTW6x ID:iThMGLi0には誰も味方がいない…
リアルでも孤立してるんだろうな
こんな奴に友人が出来るわけがない
初心者入門者はこのスレ以外で質問することを強くお勧めしたい
リアルでも孤立してるんだろうな
こんな奴に友人が出来るわけがない
初心者入門者はこのスレ以外で質問することを強くお勧めしたい
777デフォルトの名無しさん
2020/03/24(火) 23:48:39.37ID:iThMGLi0 味方も糞も嘘つき同士で仲良くしてるだけやんw
ID変えて一生懸命ワイを叩いてるけどさw
ワイがいなかったら質問者はこいつ等の嘘に悩まされて解決策は一生わからないままだったんやで
おっそろしい話だ
ID変えて一生懸命ワイを叩いてるけどさw
ワイがいなかったら質問者はこいつ等の嘘に悩まされて解決策は一生わからないままだったんやで
おっそろしい話だ
778デフォルトの名無しさん
2020/03/25(水) 00:08:12.06ID:Ye7K7uz1 >>696
Clipはスレッドセーフなんだけど
AudioInputStreamがスレッドセーフじゃないっぽい
再生ごとにAudioInputStreamのインスタンスを作成すればよい
STOPの待ち合わせはラッチを使うと簡単かつ安全
https://ideone.com/04E4rq
Clipを使い回すならこんな感じでいんじゃないかな
https://ideone.com/ieK4ND
Clipはスレッドセーフなんだけど
AudioInputStreamがスレッドセーフじゃないっぽい
再生ごとにAudioInputStreamのインスタンスを作成すればよい
STOPの待ち合わせはラッチを使うと簡単かつ安全
https://ideone.com/04E4rq
Clipを使い回すならこんな感じでいんじゃないかな
https://ideone.com/ieK4ND
779デフォルトの名無しさん
2020/03/25(水) 00:14:28.89ID:Ye7K7uz1 >>777
姫、僕はもう寝るよ
姫、僕はもう寝るよ
780デフォルトの名無しさん
2020/03/25(水) 08:15:14.54ID:S+BBkcDL Clip は、再生前に音声データを全部ロードしてから使うクラスで、
インスタンスを使い回さず、再生前に再生時間の取得とかが必要ないなら、
SourceDataLine を使ってリアルタイムにストリーム化した再生をしたほうが良い
「AudioInputStream がスレッドセーフじゃないっぽい」というのは本来はあまり関係なくて、それを使ってる Clip が実装内で同期化してるなら問題ない
質問者のコードは何故か毎回 open してるからあれだけど、Clipを使う場合、open時に受け渡すだけの AudioInputStream は、Clip の中以外で複数スレッドでは使わないでしょうし
Clip の API見たらスレッドセーフと明示されてるわけじゃなくて、本当は Clip の実装クラスが同期化してるかによるけど
>>778 の下の方のソースコードで問題ないと思う
細かいことをいえば、
Clip[] clips = {
create("C:\\Users\\a\\Desktop\\work\\decision1.wav"),
create("C:\\Users\\a\\Desktop\\work\\decision2.wav"),
create("C:\\Users\\a\\Desktop\\work\\decision3.wav")
};
この変数自体が同期化されてないとか
ロード、アンロード、ストリーム化した再生、同期化、複数同時再生とやってったコードあるけど、ここには書けない
インスタンスを使い回さず、再生前に再生時間の取得とかが必要ないなら、
SourceDataLine を使ってリアルタイムにストリーム化した再生をしたほうが良い
「AudioInputStream がスレッドセーフじゃないっぽい」というのは本来はあまり関係なくて、それを使ってる Clip が実装内で同期化してるなら問題ない
質問者のコードは何故か毎回 open してるからあれだけど、Clipを使う場合、open時に受け渡すだけの AudioInputStream は、Clip の中以外で複数スレッドでは使わないでしょうし
Clip の API見たらスレッドセーフと明示されてるわけじゃなくて、本当は Clip の実装クラスが同期化してるかによるけど
>>778 の下の方のソースコードで問題ないと思う
細かいことをいえば、
Clip[] clips = {
create("C:\\Users\\a\\Desktop\\work\\decision1.wav"),
create("C:\\Users\\a\\Desktop\\work\\decision2.wav"),
create("C:\\Users\\a\\Desktop\\work\\decision3.wav")
};
この変数自体が同期化されてないとか
ロード、アンロード、ストリーム化した再生、同期化、複数同時再生とやってったコードあるけど、ここには書けない
781デフォルトの名無しさん
2020/03/25(水) 08:31:00.19ID:S+BBkcDL782デフォルトの名無しさん
2020/03/25(水) 08:42:22.19ID:z2zjBhnK783デフォルトの名無しさん
2020/03/25(水) 08:44:04.85ID:z2zjBhnK >>781
そのへんClipがやってくれないん? 困ります!
そのへんClipがやってくれないん? 困ります!
784デフォルトの名無しさん
2020/03/25(水) 09:23:39.45ID:S+BBkcDL >>781
final でない変数を複数スレッドで使う場合は常に同期化が必要
> スレッドが起動するときに同期化は行われるはず
たしかに、実質的に final なら動作上は問題ない、だから「細かいこと」
でも、final にしてないなら作法上やっぱり同期化は必要(final Clip[] clips でもダメだからね)
自分だけが見て、自分だけが書くプログラムなら好きにすればいいよ
final でない変数を複数スレッドで使う場合は常に同期化が必要
> スレッドが起動するときに同期化は行われるはず
たしかに、実質的に final なら動作上は問題ない、だから「細かいこと」
でも、final にしてないなら作法上やっぱり同期化は必要(final Clip[] clips でもダメだからね)
自分だけが見て、自分だけが書くプログラムなら好きにすればいいよ
785デフォルトの名無しさん
2020/03/25(水) 09:33:23.96ID:S+BBkcDL786696
2020/03/25(水) 10:10:31.34ID:LViw/AR0 >>778
どうも、昨日の質問者です。わざわざプログラムまで書いて頂いてありがとうございます。下の方ですが、これを
Chime chime = new Chime();
chime.play(0);
と使えば完璧ですね。ですが、
new Chime().play(0);
にすると Direct Clip が再生した回数分増えていかないですか?
そして上の方ですが、0.2秒間隔で500回再生してみると、通常は
スレッド[Thread-124](実行中)
デーモンスレッド[Direct Clip](実行中)
スレッド[Thread-125](実行中)
デーモンスレッド[Direct Clip](実行中)
スレッド[Thread-126](実行中)
デーモンスレッド[Direct Clip](実行中)
というようにデバッグビューに表示され、音が鳴ります。しかし時々
スレッド[Thread-124](実行中)
スレッド[Thread-125](実行中)
スレッド[Thread-126](実行中)
デーモンスレッド[Direct Clip](実行中)
デーモンスレッド[Direct Clip](実行中)
デーモンスレッド[Direct Clip](実行中)
表示がこのようになり、その間音が止まります。そしてまた元に戻ったところでたまった音が一気に鳴るような現象が起きます。
そしてこの現象が起きる度に消えない Direct Clip が一つ増えます。この現象が出ているのはうちだけでしょうか?
どうも、昨日の質問者です。わざわざプログラムまで書いて頂いてありがとうございます。下の方ですが、これを
Chime chime = new Chime();
chime.play(0);
と使えば完璧ですね。ですが、
new Chime().play(0);
にすると Direct Clip が再生した回数分増えていかないですか?
そして上の方ですが、0.2秒間隔で500回再生してみると、通常は
スレッド[Thread-124](実行中)
デーモンスレッド[Direct Clip](実行中)
スレッド[Thread-125](実行中)
デーモンスレッド[Direct Clip](実行中)
スレッド[Thread-126](実行中)
デーモンスレッド[Direct Clip](実行中)
というようにデバッグビューに表示され、音が鳴ります。しかし時々
スレッド[Thread-124](実行中)
スレッド[Thread-125](実行中)
スレッド[Thread-126](実行中)
デーモンスレッド[Direct Clip](実行中)
デーモンスレッド[Direct Clip](実行中)
デーモンスレッド[Direct Clip](実行中)
表示がこのようになり、その間音が止まります。そしてまた元に戻ったところでたまった音が一気に鳴るような現象が起きます。
そしてこの現象が起きる度に消えない Direct Clip が一つ増えます。この現象が出ているのはうちだけでしょうか?
787デフォルトの名無しさん
2020/03/25(水) 10:15:20.54ID:z2zjBhnK >>784
finalにするとコンストラクタの処理が完了した時点での可視性が保証されるってことでしょ
一方でスレッドが起動するときにもhappens-beforeのセマンティクスは適用されるから同期の目的が可視性ならfinalつけなくても問題ないと思ったんよ
finalにするとコンストラクタの処理が完了した時点での可視性が保証されるってことでしょ
一方でスレッドが起動するときにもhappens-beforeのセマンティクスは適用されるから同期の目的が可視性ならfinalつけなくても問題ないと思ったんよ
788デフォルトの名無しさん
2020/03/25(水) 10:35:06.66ID:S+BBkcDL >>787
> finalにするとコンストラクタの処理が完了した時点での可視性が保証されるってことでしょ
違う、そういう意味で final の場合は同期が必要ないって言ってるんじゃない
final にすると書き換えられないから、一度可視になればそのままの値であることがずっと保証されてる
一方、Clip[] clips の場合は final じゃないから、値が更新されたらその時点で同期が保証されない
作法としては、final じゃない、複数スレッドに渡って使用する変数は常に同期は必要
> finalにするとコンストラクタの処理が完了した時点での可視性が保証されるってことでしょ
違う、そういう意味で final の場合は同期が必要ないって言ってるんじゃない
final にすると書き換えられないから、一度可視になればそのままの値であることがずっと保証されてる
一方、Clip[] clips の場合は final じゃないから、値が更新されたらその時点で同期が保証されない
作法としては、final じゃない、複数スレッドに渡って使用する変数は常に同期は必要
789デフォルトの名無しさん
2020/03/25(水) 10:41:23.65ID:z2zjBhnK790デフォルトの名無しさん
2020/03/25(水) 10:44:26.47ID:z2zjBhnK791696
2020/03/25(水) 11:09:44.26ID:LViw/AR0 >>790
うちの環境のせいかもしれませんね。これ以上は諦めることにします。
うちの環境のせいかもしれませんね。これ以上は諦めることにします。
792デフォルトの名無しさん
2020/03/25(水) 11:11:22.49ID:dEduIUns793デフォルトの名無しさん
2020/03/25(水) 11:15:56.14ID:S+BBkcDL794デフォルトの名無しさん
2020/03/25(水) 11:17:55.91ID:dEduIUns あ、ごめん。
わかってないのは、>>788か。
わかってないのは、>>788か。
795デフォルトの名無しさん
2020/03/25(水) 11:28:16.89ID:nfUzvxHY >>786
単にそのライブラリが、非同期・マルチスレッドに対応していないのだろう。
対応していない機能を使うから、バグるのでは?
ライブラリには、シングルトンみたいな単一オブジェクト・資源を使っているものがあって、
それを共有できないものが多い
だから、ライブラリの説明書には、
このライブラリはマルチスレッドでは使えない、などと書いてあるものが多い
複数の効果音を同時に使えるライブラリなどは、特殊なんだと思う。
Windows だけとか、OS を限定される
OSS・Linux 系のライブラリでは、マザーボード上のチップ内の特殊なネイティブ機能は使えないのでは?
普通これらでは、ハイバネートから戻れないとか、電源機能などもまともに動かないだろ
単にそのライブラリが、非同期・マルチスレッドに対応していないのだろう。
対応していない機能を使うから、バグるのでは?
ライブラリには、シングルトンみたいな単一オブジェクト・資源を使っているものがあって、
それを共有できないものが多い
だから、ライブラリの説明書には、
このライブラリはマルチスレッドでは使えない、などと書いてあるものが多い
複数の効果音を同時に使えるライブラリなどは、特殊なんだと思う。
Windows だけとか、OS を限定される
OSS・Linux 系のライブラリでは、マザーボード上のチップ内の特殊なネイティブ機能は使えないのでは?
普通これらでは、ハイバネートから戻れないとか、電源機能などもまともに動かないだろ
796795
2020/03/25(水) 11:33:11.93ID:nfUzvxHY ヤマハなどの音源チップと、ライブラリのAPI が、バージョン違いで一致しないとか
基本、マザーボード上のチップは、Windows 限定だろ。
OSS・Linux 系のライブラリでは、正常に動くかどうか分からない
基本、マザーボード上のチップは、Windows 限定だろ。
OSS・Linux 系のライブラリでは、正常に動くかどうか分からない
797デフォルトの名無しさん
2020/03/25(水) 11:57:47.88ID:ag+nUZxm まーた頭悪い奴等同士でグダグダ交換日記してるよ
ほんとキチガイやなこいつ等
まとめて逝って良し
ほんとキチガイやなこいつ等
まとめて逝って良し
798デフォルトの名無しさん
2020/03/25(水) 14:23:25.54ID:ag+nUZxm まぁ一番イラつくのは全てが他力本願の頭のイカれた質問者だけどさ
やってること同じなのにちょっとデバッグウィンドウの表示ちがうだけで
「〇〇じゃないですか!?なんでですか!?」って
バカかとアホかと
少しはテメーで考えろボケカス
ほんとこういうのに答え教えても何の意味も価値も成長もないんだわ
やってること同じなのにちょっとデバッグウィンドウの表示ちがうだけで
「〇〇じゃないですか!?なんでですか!?」って
バカかとアホかと
少しはテメーで考えろボケカス
ほんとこういうのに答え教えても何の意味も価値も成長もないんだわ
799デフォルトの名無しさん
2020/03/25(水) 15:08:36.82ID:z2zjBhnK >>798
なんでですか?
なんでですか?
800デフォルトの名無しさん
2020/03/25(水) 15:11:03.04ID:yVEdwhtr test
801デフォルトの名無しさん
2020/03/25(水) 15:17:38.36ID:yVEdwhtr802デフォルトの名無しさん
2020/03/25(水) 15:18:22.75ID:yVEdwhtr (おお、やっと書き込めた...why?)
(続き)
778の前者の実装(CountDownLatchを使った方)は、
try-with-resources文でclip.close()が暗黙に呼ばれるので
chimeインスタンスを使いまわしても、new Chimeを繰り返してもスレッドは増殖しないですね。
確認した環境: AdoptOpenJDK 12.0.1+12, 64bit Server VM (Hotspot)
(オーディオデータは C:\Windows\Media\notify.wav 等)
$ java --version
openjdk 12.0.1 2019-04-16
OpenJDK Runtime Environment AdoptOpenJDK (build 12.0.1+12)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 12.0.1+12, mixed mode, sharing)
(続き)
778の前者の実装(CountDownLatchを使った方)は、
try-with-resources文でclip.close()が暗黙に呼ばれるので
chimeインスタンスを使いまわしても、new Chimeを繰り返してもスレッドは増殖しないですね。
確認した環境: AdoptOpenJDK 12.0.1+12, 64bit Server VM (Hotspot)
(オーディオデータは C:\Windows\Media\notify.wav 等)
$ java --version
openjdk 12.0.1 2019-04-16
OpenJDK Runtime Environment AdoptOpenJDK (build 12.0.1+12)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 12.0.1+12, mixed mode, sharing)
803795
2020/03/25(水) 15:23:47.87ID:nfUzvxHY 漏れらは、動かないゲームエンジンとか知ってるから、音なんて出ない方が多いぐらいw
Pixi.js をコアにした、Phaser は音が出るらしいとか、そういう噂で決める
大手のブラウザみたいに、Windows 用を別に作っているものは、半分ぐらいは動くけど、
OSS・Linux 系のライブラリでは、ソースコードを書いてるだけだから、
それをWindows ネイティブの機械語に変換した場合に、動くとは限らない
無線LAN でも、半分は動かない。
各メーカーで、ドライバーを作っていれば動くけど
msys2/mingw で、Windows 用にコンパイルしても、互換性が低い。
WSL の方が、MS が作っているから、互換性が高い
ヤマハが、Java・OSS 向けのドライバーを作っていれば動くけど、まさか作っていないだろ
Pixi.js をコアにした、Phaser は音が出るらしいとか、そういう噂で決める
大手のブラウザみたいに、Windows 用を別に作っているものは、半分ぐらいは動くけど、
OSS・Linux 系のライブラリでは、ソースコードを書いてるだけだから、
それをWindows ネイティブの機械語に変換した場合に、動くとは限らない
無線LAN でも、半分は動かない。
各メーカーで、ドライバーを作っていれば動くけど
msys2/mingw で、Windows 用にコンパイルしても、互換性が低い。
WSL の方が、MS が作っているから、互換性が高い
ヤマハが、Java・OSS 向けのドライバーを作っていれば動くけど、まさか作っていないだろ
804696
2020/03/25(水) 19:06:14.91ID:LViw/AR0 >>802
解決しました。コンパイラのバージョンが1.8になってました。
Eclipseを最新のものにしていないせいか11までしか使えないのですが、それにしたら症状が消えました。
ありがとうございました。
解決しました。コンパイラのバージョンが1.8になってました。
Eclipseを最新のものにしていないせいか11までしか使えないのですが、それにしたら症状が消えました。
ありがとうございました。
805デフォルトの名無しさん
2020/03/25(水) 19:13:41.98ID:z2zjBhnK ほほう
806デフォルトの名無しさん
2020/03/25(水) 22:28:11.93ID:yVEdwhtr >>804
解決してよかったですね。
ただ、その報告では結局何をどう変更して解決したのかこちらは分からないです。
個人的には Clip.close() を呼ばなくても大丈夫な場合/環境があるのか気になります。
解決してよかったですね。
ただ、その報告では結局何をどう変更して解決したのかこちらは分からないです。
個人的には Clip.close() を呼ばなくても大丈夫な場合/環境があるのか気になります。
807696
2020/03/26(木) 00:01:09.82ID:ZCUR4732808806
2020/03/26(木) 01:21:15.44ID:bOCMBW8V >>807
うちでも、Java 8でCountDownLatch版で new Chime().play(i) を連続で500回呼ぶのを10回ぐらい実行したら一回だけDirect Clipスレッドが一つ残りました。
見てみると、
com.sun.media.sound.DirectAudioDevice$DirectClip.run()
の(コメント込みで)10行目ぐらいの lock.wait() で止まっていました。
この箇所の実装をJava 8とJava 12で比較すると少し修正されています。
Java8 の実装だと
while (thread == curThread) {
で thread == curThread が true と判定した後、
synchronized(lock) { ※
で同期化ブロックに入る前に DirectAudioDevice$DirectClip.thread フィールドが変更されていた場合、
そのまま lock.wait() に突入してしまうタイミングがあるように見えます。
つまり DirectClip.run() が※のモニタを取る前に
DirectAudioDevice$DirectClip.implClose() が DirectClip.thread = null として lock.notifyAll() してしまうと、
DirectClip.run() の lock.wait() は来ない通知 (lockのnotify) を待ち続けることになるのでしょう。
Java12 では DirectClip.run() の synchronized(lock) を取ってすぐに
while (!doIO && thread == curThread) {
で DirectClip.thread フィールドをチェックするようになっているので、
絶妙なタイミングで DirectClip.implClose() に割り込まれても大丈夫なようにライブラリが修正されたのでは無いでしょうか。
リリースノートかbug paradeを丹念にチェックしたら、どこかに載っているかもしれません。
うちでも、Java 8でCountDownLatch版で new Chime().play(i) を連続で500回呼ぶのを10回ぐらい実行したら一回だけDirect Clipスレッドが一つ残りました。
見てみると、
com.sun.media.sound.DirectAudioDevice$DirectClip.run()
の(コメント込みで)10行目ぐらいの lock.wait() で止まっていました。
この箇所の実装をJava 8とJava 12で比較すると少し修正されています。
Java8 の実装だと
while (thread == curThread) {
で thread == curThread が true と判定した後、
synchronized(lock) { ※
で同期化ブロックに入る前に DirectAudioDevice$DirectClip.thread フィールドが変更されていた場合、
そのまま lock.wait() に突入してしまうタイミングがあるように見えます。
つまり DirectClip.run() が※のモニタを取る前に
DirectAudioDevice$DirectClip.implClose() が DirectClip.thread = null として lock.notifyAll() してしまうと、
DirectClip.run() の lock.wait() は来ない通知 (lockのnotify) を待ち続けることになるのでしょう。
Java12 では DirectClip.run() の synchronized(lock) を取ってすぐに
while (!doIO && thread == curThread) {
で DirectClip.thread フィールドをチェックするようになっているので、
絶妙なタイミングで DirectClip.implClose() に割り込まれても大丈夫なようにライブラリが修正されたのでは無いでしょうか。
リリースノートかbug paradeを丹念にチェックしたら、どこかに載っているかもしれません。
809デフォルトの名無しさん
2020/03/26(木) 07:27:03.49ID:x8GhGiAX >>808
はえー凄い
はえー凄い
810デフォルトの名無しさん
2020/03/26(木) 07:28:25.48ID:VOEDxD9+ 自演やめろゴミ
811デフォルトの名無しさん
2020/03/26(木) 07:32:48.18ID:VOEDxD9+ そもそも説明になってなさすぎる
まともな文章書けないガイジはレスすんのやめろ
マジキチ
まともな文章書けないガイジはレスすんのやめろ
マジキチ
812デフォルトの名無しさん
2020/03/26(木) 07:40:08.31ID:PXNa4DUz ■ Java 質問スレのググれカス君とは
質問と回答に対して罵倒を続ける荒らし
罵倒はワンパターンで、ググれカス、ゴミ、馬鹿、キチガイ、低能、チョンなどを多用します
プログラミングの基礎知識がないため、技術的な事はほとんど言いません
過去の発言でクラス変数とインスタンス変数を勘違いしていたり、基本的な事も理解できていないことが判明しています
どんな回答がついてもそれが間違いだと主張しますが、根拠は示しません
あなたの質問についた回答が正しいかどうかは自分で判断して下さい
彼は自分に対する批判は全部自演だと思っているようなので、構うだけ無駄です
質問と回答に対して罵倒を続ける荒らし
罵倒はワンパターンで、ググれカス、ゴミ、馬鹿、キチガイ、低能、チョンなどを多用します
プログラミングの基礎知識がないため、技術的な事はほとんど言いません
過去の発言でクラス変数とインスタンス変数を勘違いしていたり、基本的な事も理解できていないことが判明しています
どんな回答がついてもそれが間違いだと主張しますが、根拠は示しません
あなたの質問についた回答が正しいかどうかは自分で判断して下さい
彼は自分に対する批判は全部自演だと思っているようなので、構うだけ無駄です
813デフォルトの名無しさん
2020/03/26(木) 07:56:23.34ID:VOEDxD9+ 図星突かれたらすぐ顔真っ赤にして捏造する癖やめたほうがいいぞ低能ゴミカス
アホ
アホ
814デフォルトの名無しさん
2020/03/26(木) 08:22:06.51ID:IY98K1Cx 説明になってなさすぎる (自分も説明は出来ない)
ってパターン多すぎてネタ化してる
ってパターン多すぎてネタ化してる
815デフォルトの名無しさん
2020/03/26(木) 10:07:29.94ID:1YJSz7Cz ロック取ってループで条件チェックはマルチスレッドの基本だけれどそれやってなかったんだなー標準ライブラリにもバグが潜んでるものなんだなー
816795
2020/03/27(金) 04:13:43.12ID:cwhPeqJj ゲームエンジンとか、まともに音が出る方が少ないw
それに、色々なブラウザで動かないから、Chrome 限定にする
Pixi.js をコアにした、Phaser は音が出るらしいとか、
そういう噂ばっかりを集めて、皆で動くエンジンへ移動するw
開発者は、動かないエンジンを修理するよりも、
皆で動くエンジンへ移動するw
それに、色々なブラウザで動かないから、Chrome 限定にする
Pixi.js をコアにした、Phaser は音が出るらしいとか、
そういう噂ばっかりを集めて、皆で動くエンジンへ移動するw
開発者は、動かないエンジンを修理するよりも、
皆で動くエンジンへ移動するw
817デフォルトの名無しさん
2020/03/27(金) 18:56:47.63ID:HqZQi56I クラス変数とインスタンス変数を勘違いした発言なんかしたら、俺だったら恥ずかしくて二度とスレに来れない
818デフォルトの名無しさん
2020/03/27(金) 19:23:18.41ID:KPP4IN2D おまえの馬鹿さを指摘してやってるだけなのに
どう解釈したら勘違いしてるって思えるのか低能すぎてこえーわ
バカのくせに開き直って妄想で捏造書き込むキチガイもほどほどにしとけゴミカス低能
どんだけ根にもってんだキチガイ
>一応だけどクラス変数はインスタンスを作らなくても使用できる変数で
もっかい書いてやるけどつかえねーから馬鹿
どう解釈したら勘違いしてるって思えるのか低能すぎてこえーわ
バカのくせに開き直って妄想で捏造書き込むキチガイもほどほどにしとけゴミカス低能
どんだけ根にもってんだキチガイ
>一応だけどクラス変数はインスタンスを作らなくても使用できる変数で
もっかい書いてやるけどつかえねーから馬鹿
819デフォルトの名無しさん
2020/03/27(金) 19:29:26.82ID:KPP4IN2D アンロード君
classNotFound君
同期化君
インスタンス作らなくても変数が使えちゃう君
全員入門書レベルのゴミがなぜか捏造して叩いてくるんだよな
ほんまキチガイの巣窟すぎてやべーわここ
英語も読めないプログラム全般の基本的な動作も理解してないゴミ糞低能の分際で
「おまえは勘違いしてる!(キリィイイイ!」とかわけのわからん馬鹿捏造解釈で
延々と叩くことしかできないキモさはお隣の国そっくりやな
バカチョンコミュニティかここは?ん?
classNotFound君
同期化君
インスタンス作らなくても変数が使えちゃう君
全員入門書レベルのゴミがなぜか捏造して叩いてくるんだよな
ほんまキチガイの巣窟すぎてやべーわここ
英語も読めないプログラム全般の基本的な動作も理解してないゴミ糞低能の分際で
「おまえは勘違いしてる!(キリィイイイ!」とかわけのわからん馬鹿捏造解釈で
延々と叩くことしかできないキモさはお隣の国そっくりやな
バカチョンコミュニティかここは?ん?
820デフォルトの名無しさん
2020/03/27(金) 19:32:13.94ID:KPP4IN2D 変数がどうたらとかくだらなすぎて書く気すら失せるから
ほぼほぼスルーしてたんだけど黙ってたら延々と言って来るからな低能って
ほんとゴミにはしっかり言ってやらんとダメだと再認識したわ
ほぼほぼスルーしてたんだけど黙ってたら延々と言って来るからな低能って
ほんとゴミにはしっかり言ってやらんとダメだと再認識したわ
821デフォルトの名無しさん
2020/03/27(金) 21:51:20.21ID:129r78Sa >>820
クラス変数はインスタンス作らなくても使えるよ
クラス変数はインスタンス作らなくても使えるよ
822デフォルトの名無しさん
2020/03/27(金) 21:52:17.52ID:129r78Sa >>820
クラス変数とインスタンス変数は違うよね?
クラス変数とインスタンス変数は違うよね?
823デフォルトの名無しさん
2020/03/27(金) 21:53:09.52ID:129r78Sa 同じなら同じとしっかり言ってよ
824デフォルトの名無しさん
2020/03/27(金) 22:00:39.04ID:KPP4IN2D 馬鹿理論はもういいって
一人で使ってろ低能アホ
一人で使ってろ低能アホ
825デフォルトの名無しさん
2020/03/27(金) 22:19:34.06ID:129r78Sa826デフォルトの名無しさん
2020/03/27(金) 22:20:16.14ID:129r78Sa >>824
クラス変数とインスタンス変数は違うじゃんか?
クラス変数とインスタンス変数は違うじゃんか?
827デフォルトの名無しさん
2020/03/27(金) 22:27:47.79ID:KPP4IN2D だからなに?いつ同じって言った?ん?
違ってもインスタンスなくても使える?は?アホ
一人でわけの分からんこと言って勝手に決めつけて
まともな文章も書けないしもう回れ右しとけ低能
まぁ学生だろうけどまともな文章書けるようになってから出直せアホ
違ってもインスタンスなくても使える?は?アホ
一人でわけの分からんこと言って勝手に決めつけて
まともな文章も書けないしもう回れ右しとけ低能
まぁ学生だろうけどまともな文章書けるようになってから出直せアホ
828デフォルトの名無しさん
2020/03/27(金) 22:30:23.92ID:KPP4IN2D それにしてもどうやったらこんな馬鹿なことを
延々と喚けるのかアホの頭はホントハッピーセットすぎてやべーわ
延々と喚けるのかアホの頭はホントハッピーセットすぎてやべーわ
829デフォルトの名無しさん
2020/03/27(金) 22:30:28.80ID:129r78Sa830デフォルトの名無しさん
2020/03/27(金) 22:31:30.85ID:129r78Sa831デフォルトの名無しさん
2020/03/27(金) 22:33:53.01ID:KPP4IN2D アホ「クラス変数はインスタンスなくても使える!」
聖者ワイ「アホ君、変数っていうのはね中身入ってないと使えないよ」
アホ「こいつはクラス変数とインスタンス変数が同じと思ってる!(キリィイイイ」
聖者ワイ「何言ってんだこの馬鹿・・・」
ほんとキチガイは意味不明過ぎてヤバいね
聖者ワイ「アホ君、変数っていうのはね中身入ってないと使えないよ」
アホ「こいつはクラス変数とインスタンス変数が同じと思ってる!(キリィイイイ」
聖者ワイ「何言ってんだこの馬鹿・・・」
ほんとキチガイは意味不明過ぎてヤバいね
832デフォルトの名無しさん
2020/03/27(金) 22:36:49.47ID:129r78Sa833デフォルトの名無しさん
2020/03/27(金) 22:41:39.70ID:KPP4IN2D >変数に中身が入ってるかの話を僕がしてないのはわかりますよね
エスパーじゃないんだからお前の低能な頭の中をみんなが理解してたら凄いことだね
いいかい、アホ君。変数というのはね、中身があって初めて”使える”っていうんだよ
おまえの脳内設定の意味のわからん”使える”は万人に適用できないんだよ
わかるかい?アホ
こんなアホ理論が通用するのは学生のうちだけだからよく覚えておけよ糞アホ君
エスパーじゃないんだからお前の低能な頭の中をみんなが理解してたら凄いことだね
いいかい、アホ君。変数というのはね、中身があって初めて”使える”っていうんだよ
おまえの脳内設定の意味のわからん”使える”は万人に適用できないんだよ
わかるかい?アホ
こんなアホ理論が通用するのは学生のうちだけだからよく覚えておけよ糞アホ君
834デフォルトの名無しさん
2020/03/27(金) 22:44:13.08ID:KPP4IN2D そして違うとか違わないとかこれまた意味の分からん比較の話に飛ぶのも
キチガイ脳すぎて相当ヤバいよアホ君
脳専門の病院に行ったほうがいいよマジで
キチガイ脳すぎて相当ヤバいよアホ君
脳専門の病院に行ったほうがいいよマジで
835デフォルトの名無しさん
2020/03/27(金) 22:44:31.53ID:129r78Sa >>833
変数を使うの定義をすり替えてますよね
質問してるのは僕なので僕の定義に完全服従する義務が
あなたにはありマフ
責任感を持って質問に答えてください
クラス変数とインスタンス変数は違いますよね?
変数を使うの定義をすり替えてますよね
質問してるのは僕なので僕の定義に完全服従する義務が
あなたにはありマフ
責任感を持って質問に答えてください
クラス変数とインスタンス変数は違いますよね?
836デフォルトの名無しさん
2020/03/27(金) 22:46:06.47ID:129r78Sa837デフォルトの名無しさん
2020/03/27(金) 22:49:10.74ID:KPP4IN2D はい、終わり
バカの文章見るのキツイ
もう日本語として破綻してる
人生がんばれよアホ君
君の別名はシンプルにアホ君な
アンロード君
classNotFound君
同期化君
アホ君
あほあほ四銃士
バカの文章見るのキツイ
もう日本語として破綻してる
人生がんばれよアホ君
君の別名はシンプルにアホ君な
アンロード君
classNotFound君
同期化君
アホ君
あほあほ四銃士
838デフォルトの名無しさん
2020/03/27(金) 22:52:51.03ID:129r78Sa839デフォルトの名無しさん
2020/03/27(金) 22:55:24.04ID:KPP4IN2D 初心者未満は相応のスレに行きましょう
ここは初心者スレです
ここは初心者スレです
840デフォルトの名無しさん
2020/03/27(金) 22:59:27.40ID:YevT+Fte 配列やmapを丸ごとprint出来ないんですか?
841デフォルトの名無しさん
2020/03/27(金) 22:59:48.22ID:129r78Sa842デフォルトの名無しさん
2020/03/27(金) 23:29:14.28ID:4yGmFOWw >>840
for文ではダメなの?
for文ではダメなの?
843デフォルトの名無しさん
2020/03/27(金) 23:41:04.58ID:1HVGk/Xz844デフォルトの名無しさん
2020/03/27(金) 23:43:34.04ID:QZ/xTJoy >>840
できるよ。そう、Groovy,Scala,Kotlinならね
マジレスするとcommons langのStringUtils.joinとかMapUtils.verbosePrintあたりを活用してお茶を濁すくらいだな
できるよ。そう、Groovy,Scala,Kotlinならね
マジレスするとcommons langのStringUtils.joinとかMapUtils.verbosePrintあたりを活用してお茶を濁すくらいだな
845デフォルトの名無しさん
2020/03/27(金) 23:49:43.11ID:QZ/xTJoy AbstractMapっていい感じにtoString実装してるんだな
何故かできないものと思い込んでた
何故かできないものと思い込んでた
846デフォルトの名無しさん
2020/03/28(土) 00:03:08.45ID:NOj4Ih5d こういう思い込みのアホって何で回答するんだ?
脳に蛆でも沸いてんのか?自演か?
またアンロード君か同期化君が知ったかでレスつけてんのか?
目立ちたがり屋の妄想家は回れ右してSNS!!!!
脳に蛆でも沸いてんのか?自演か?
またアンロード君か同期化君が知ったかでレスつけてんのか?
目立ちたがり屋の妄想家は回れ右してSNS!!!!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国とロシアの爆撃機、日本周辺で共同飛行 [少考さん★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 防衛省、中国を完全論破www 「事前通告があったのは海自であって空自ではない」 高市早苗勝利 [175344491]
- 高市早苗さん、もう自決でしか許されないレベルになる [402859164]
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★4 [597533159]
- 韓国政府、高市早苗の「竹島領土」発言にブチギレwwwwwwwwwwwwwwww [834922174]
- おなかすいた…誰か助けて
