1 名前:Javaが初心者 mailto:sage [2008/05/12(月) 03:05:27 ] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 pc11.2ch.net/hp/ Webプログラミング pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 www.wikiroom.com/java/?path,classpath ・String に == は使うな。equals() を使え。 ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 前スレッド 【初心者】Java質問・相談スレッド114【大歓迎】 pc11.2ch.net/test/read.cgi/tech/1207385614/ 次スレは>>990 あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 www.wikiroom.com/java/
449 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:55:34 ] 6000個のスレッドwww どんなマシンでまともに動くのか教えて欲しいwww >>447 SQLのエラーコードを取得して、Oracleのマニュアルを参照汁 getErrorCodeとかそんなメソッドある
450 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:57:07 ] 6000個もスレッドを使ってる時点で 何かがおかしいと思わざるを得ないのだが コンテキストスイッチのコストだけでもバカにならないんじゃ
451 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:57:59 ] 6,000・・・Thredのコストだけでも500Mくらいつかってそうだな、おい。 どうせpoolの管理も自分でやっているんだろ ExecutorServiceとか使えばサクサク動く予感
452 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:59:12 ] 6000台のPCに分散処理させれば解決(・∀・)イイ!!
453 名前:デフォルトの名無しさん [2008/05/26(月) 22:59:29 ] つかってる
454 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:59:53 ] 6000! スレッドダンプが終わらん!
455 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:03:20 ] public class Test { public static void main(String[] args) { char[] a = { 'ア', 'ア', 'あ', 'A', 'A' }; for (char c: a) { System.out.println(Character.UnicodeBlock.of(c)); } } } そりゃ、アもAも HALFWIDTH_AND_FULLWIDTH_FORMS に分類されちゃうよなー。
456 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:03:54 ] 本当に6000もスレッドを使わなければいけないのか、 よく考えるべきである
457 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:07:45 ] >>453 減らすべし。大抵は多くても数十で十分のはず 他の言語なら大量に作って大量に捨てるような設計でも問題ないこともあるけど Javaのスレッドは、基本的にそんな使い方はしない
458 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:10:02 ] タスクが6万あったとしても、スレッドは数十で充分だろうな、たぶん。
459 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:25:23 ] 必要だから作っているんです それにpool使って逐次動かしていますから問題はありません データの吸出しを修正してみます
460 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:25:43 ] >>449 サンクス。 getParameters() とかいうのがあるので、ちょいと試してみる。
461 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:33:00 ] 煽りとかじゃなしにプログラマとして6000個のスレッドがどういう状況で必要になるのか興味がある
462 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:41:28 ] 意味も解らず調べもせずに実装しているという状況なんだろう
463 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:03:19 ] スレッド6000個ってnewするだけでもコスト高そうだな。
464 名前:デフォルトの名無しさん [2008/05/27(火) 00:08:16 ] ごめんタスクが6000で稼動してるのは10ほど そっか言い方間違えたな しかしボロカスだなあw
465 名前:デフォルトの名無しさん [2008/05/27(火) 00:11:35 ] もう少し詳しく言うとHTMLパースをMozillaJavaHTMLParserつかってさせるためのもの
466 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:17:39 ] 全部並列でって話ならば、そりゃ負荷かけすぎ IOのように比較的長く待たされる処理がほとんどならば、6000タスクを並列にやって硬貨出るけど、HTMLのParseじゃ逐次処理の方が早いかもよ
467 名前:デフォルトの名無しさん [2008/05/27(火) 00:19:36 ] かもしれんねPoolサイズ3に絞ってやったら少し改善した
468 名前:デフォルトの名無しさん [2008/05/27(火) 00:21:56 ] このサイズをメモリーの状況に応じて自動変更できるとさらにいいなあ
469 名前:デフォルトの名無しさん [2008/05/27(火) 00:27:49 ] 申し送れましたが 皆さん有難う
470 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:34:12 ] HTMLのパースに10スレッドも使うか? パースに1、JS実行に1、画像読み込みに1で3くらいじゃね?
471 名前:デフォルトの名無しさん [2008/05/27(火) 00:37:35 ] ページ数が多くて
472 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:43:51 ] sageを覚えようね
473 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:46:16 ] ああ 下げたほうが良いのか 了解
474 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:59:23 ] javaの実行時間で質問です。 ある処理をSystem.currentTimeMillis()の差で調べたのですが forで100回ぐらいまわした平均をとったほうが正確になるかと考えました。 すると1回のときとだいぶ違う時間になったのですがなぜかわかりますか?
475 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 01:02:40 ] 具体的にどう違ったのさ?
476 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 01:09:10 ] >>474 JITが潰してくれたんでは
477 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 01:09:17 ] 何度も実行されるコードは高速化の価値があると判断&最適化されたりする。
478 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 01:11:54 ] ほんまかいな
479 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 02:08:19 ] 最近の香具師はHotSpot知らんのか?
480 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 12:05:53 ] >>478 だけだろう
481 名前:デフォルトの名無しさん [2008/05/27(火) 15:02:12 ] 昨日のスレッドの件有難う 大分よくなった でも6600ページダウンロードしてパースする作業だけで15分はかかりすぎだよねえ 何とかならんものか
482 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 15:44:39 ] ごめん下げだったよね ついでにいいかな Matplotlibって視覚化ツールがあるんだけど これをjavaからコントロールした人居る?
483 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:17:27 ] >>481 鯖に負荷掛かるから止めろ。
484 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:37:28 ] そうそう そのためにスレッド数は絞るようにはしてるんだけどね ダウンローダーと基本的には接続の部分は一緒だから 嫌われるプログラムではあるよね
485 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:48:54 ] XMLの読み込みなんですけど、xmlnsを読み込むのってどんなメソッド使ったらいいんですか?
486 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:54:29 ] xmlns属性は普通報告されない
487 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:56:31 ] xmlns属性の値を引っ張ってきて別のメソッドで使いたいんですけど・・・
488 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:00:42 ] じゃあパーサーから出るDocumentのelementひっぱってきてatributeを見れば良いんじゃね
489 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:06:07 ] 若しくはHTMLの文字列をindexof(xmlns)で位置拾って""でくくられてるところをStringで拾うとか てかあそこ値変わるのか
490 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:12:50 ] ごめんなさい普通に>>488 でできました。 ありがとうございました
491 名前:デフォルトの名無しさん [2008/05/27(火) 17:34:52 ] やっぱ 半値押しで粘りそうな感じもしないではないな 買い方逃げるとしたら次のリバだろうね
492 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:36:06 ] 誤爆ごめん
493 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:37:32 ] 誰かグラフ描写のJGraphというソフトを使ったことある人いませんか? ダウンロードはできたんですが、そのあとのjarファイル等の操作がよくわかりません。 わかる方いれば、よろしくお願いします。
494 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:46:50 ] JFreeChartのほうが機能多くていいぞ
495 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 17:58:01 ] JFreeChartですか・・・ 僕がやりたい(やらなければいけない)のは、「グラフ理論」なんです。 有向グラフとかノード、アークといったやつです。
496 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 18:01:50 ] だったらJSCIのほうがいいかも
497 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 18:44:58 ] JGraphを使えっていう指示があったんです(泣)
498 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 18:50:01 ] そっかあ わかんないなあ 誰か助けてあげてえ
499 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:00:20 ] ディスクイメージなどのisoの中身を確認したり、抜き出したりするライブラリはありませんか?
500 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:05:33 ] >>499 あまり知識がないもんで・・・ よくわからないです。
501 名前:デフォルトの名無しさん [2008/05/27(火) 19:08:09 ] WINRARをDllフックしてJINIでつなぐ
502 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:10:29 ] >>501 そういうライブラリは存在しないのですかね? ネイティブにしたくないので仕様書探します。
503 名前:デフォルトの名無しさん [2008/05/27(火) 19:12:43 ] あい
504 名前:デフォルトの名無しさん [2008/05/27(火) 19:22:34 ] webアプリ構築してます。 strats+hibernateです。マスターテーブルの存在チェックを複数件(1〜300)行いたいのですが一件づつselectしチェックを行うのと全件selectしてmapに格納して存在チェックするのではどちらがよいでしょうか マスタの件数は150件ほどです
505 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:40:05 ] >>481 あんまり馬鹿やってるとIPではじかれる
506 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:44:53 ] >>505 そうなんか? 別にクラッキングじゃねえけど
507 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:00:32 ] >>506 迷惑
508 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:00:38 ] ご質問させて頂きます。 余りを出す演算子で%があると思うのですが %以外で余り値を出す演算子とかはあるのでしょうか? 何か方法があれば教えて頂ければと思います。 宜しくお願い致します。
509 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:02:56 ] まあいいやはじきたきゃはじきやがれ 脆弱サーバー入れて客の責任にしたきゃすればいい
510 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:04:36 ] >>508 宿題を出された→%禁止→でも、あまりを使うアルゴリズムしか思いつかない→%以外に何かあるはずだ→質問しよう と、エスパーしてみる あまりを出す演算子って言われたら%しか思いつかない
511 名前:デフォルトの名無しさん [2008/05/27(火) 21:06:20 ] むかしBasicであったなMIDだっけ覚えてねえや あれのこと?
512 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:13:07 ] %っじゃなくても出せるような。 一桁ずつ2で割ってけばいずれ余りが出る。 ナベアツプログラム検索してるときにこの手の考え方が出てたよ。
513 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:17:49 ] >>510 自分も%しか思い浮かばないので質問させて頂きました。 >>511 うーん、多分違うと思います。 すいません。 >>512 それは奇数なら大丈夫だと思うのですが偶数なら・・・。 と言うか、1桁ずつ2で割るという意味がちょっと自分は理解出来ないのですが どういうことでしょうか? %以外の演算子があるのでしょうか? ちょっとナベアツプログラムでぐぐってきます。
514 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:21:05 ] ていうか、質問は演算子だったんだろ。演算子なんて数が知れてるだろうに
515 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:21:59 ] >>513 どうして%じゃだめなんだよ
516 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:24:38 ] 二つの整数値、8 と 3 の 『和』 『差』 『積』 『商』 『余り』 を計算して表示してください。(結果はすべてint型) 尚、『余り』に関しては 余り演算子 % を使用する場合と、しない場合の2通りの方法を考えてみましょう。 又、3ではなく、0で割るとはどうなエラーメッセージなのかも確認してみましょう。 という課題で出された為です。 自分は%以外の演算子を知らない為、質問させて頂きました。
517 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:26:31 ] 小学生なら余りを出すときは割られる数から商と割る数を掛けたものを引くだろうな
518 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:27:09 ] 大学の先生に聞け
519 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:28:13 ] 終了。次の質問どうぞ
520 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:28:57 ] %以外の演算子は使っていいんだから-と/と*でできるじゃないか
521 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:29:46 ] てか割り算できない人いるか
522 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:31:01 ] 馬鹿は際限がないということだ
523 名前:デフォルトの名無しさん [2008/05/27(火) 21:32:04 ] Modだったな 一文字違いじゃねえか
524 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:46:19 ] 皆様、お答え頂きありがとうございました。
525 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:54:43 ] >>506 ファイナンス系は厳しいぜ IPからプロバイダに垢停止迫ったりは普通 あまりしつこいと自宅に直接電話かかって来るからなw
526 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:04:12 ] たった3スレッドでか? ありえねえだろ
527 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:18:45 ] あと普通は嫌ならロボットはじくスクリプト入れるよな
528 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:32:28 ] あと普通はレイプされるのが嫌なら錠付き貞操帯を着けて鍵を飲み込んでおくよな
529 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:54:59 ] プログラムの実行時間計測してるんですが毎回時間がばらついてしまいます。 なぜでしょうか??
530 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:55:59 ] rdtscとかQueryPerformanceCounter()を使う
531 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 00:31:03 ] 運悪くGCが働いたか、何かの最適化が起こっている可能性がある
532 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 01:14:46 ] >526 HTTP1.1 では、同時接続数上限は 2 ですよ、と。 さらに言えば、連続して接続するなら、単一接続にした方が良いと思います。 過ぎたるは及ばざるがごとし。てか、鯖にも許容量があるので。 HTTPヘッダに、Accept-Encoding: gzip を追加しましょう。 対応していれば、テキストが5分の1ぐらいに圧縮されます。 java.util.zip.GZIPInputStream で解凍できます。
533 名前:デフォルトの名無しさん [2008/05/28(水) 01:40:24 ] >532 どうせapacheを使うのだから、apacheでやらせた方が良くない?
534 名前:ume mailto:sage [2008/05/28(水) 04:13:44 ] >>516 8.0-(int)(8.0/3.0)*3.0 CとJavaでも。
535 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 07:55:57 ] >>508 a%b=a-(a*(a/b)) ※/演算子の結果が小数を返すものならintで丸める または自作で余りを求める関数を作れ っていう意味では?
536 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 11:42:30 ] >>533 >>526 (のさらに元ネタの、スレッドを起こすプログラム書いている人)は、 Httpクライアント側じゃないの?
537 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 11:54:52 ] そうだよ クライアント側 2でいいなら2にして見るかな 何ももめるつもりで書いてるものでは無いからな あと6600はひとつのサーバーに対してじゃないから その辺は如何なのかなって気もするけどな 良くあるループの理論速度計算みたいに スレッドの計算できる式ってあるのかな
538 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 11:57:01 ] で 話全く変わるけどマルチっぽくてすまんが OOOSDKのことで聞きたいんだが たとえばJPanelにCALCのインスタンス貼るのはUNO使えば良いんだろうか
539 名前:デフォルトの名無しさん [2008/05/28(水) 16:44:11 ] final で宣言した変数にcloneで初期値を代入できんのやね。 そんなもんなのかなぁ。
540 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:20:52 ] 普通はできると思う。どういう初期化の仕方をしてできなかったの? public class A implements Cloneable { private final C c; public A(C c) throws CloneNotSupportedException { this.c = (C)c.clone(); } public static void main(String[] args) throws CloneNotSupportedException { C c = new C(); A a = new A(c); final C b = (C)c.clone(); System.out.println(c + ", " + a.c + ", " + b); } } class C implements Cloneable { public Object clone() throws CloneNotSupportedException { return super.clone(); } }
541 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:23:01 ] あ、Aの方のimplements Cloneableは余計
542 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:29:56 ] こういうことをしたいんじゃないかと思う public class A implements Cloneable { private final ArrayList list = new ArrayList(); public Object clone() throws CloneNotSupportedException { A a = (A) super.clone(); a.list = a.list.clone(); // ← できない return a; } }
543 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:39:03 ] それは普通に再代入だから 再代入を禁止したいからfinalを付けるのに付けた意味がないような 本当のところは実際にやろうとしたことを聞かないと分からないけど
544 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:39:39 ] アプレットを表示するHTMLを作りたいのですが、 赤いXとアプレットのサイズの灰色の枠のみ表示されて、中身が表示されないんですが、 何が悪いのかわかりません。
545 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:40:50 ] コードを書けコードを こっちにだって何が悪いか分からん
546 名前:544 [2008/05/28(水) 17:43:00 ] <html> <head> <title>11_4</title> </head> <body> <h1>11の4</h1> <applet code="s11_4.class" width="500" height="500"> </applet> </body> </html>
547 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 18:05:38 ] >>546 そのHTMLと同じディレクトリにs11_4.classは存在するか? 他に必要なクラスファイルもすべて存在するか? 何か例外が発生していないかコンソールを確認してみたか? s11_4のソースコードを見せてみれば何かわかるかもしれない
548 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 18:21:38 ] .class 削ってみること。
549 名前:544 [2008/05/28(水) 18:32:38 ] >>547 上三つはだいじょぶでした アプレットビューワで見れてもHTMLに引っ張ってきただけじゃだめなんですね、、、、