理想的な状況(Old GCを避けられる)なら、Paralell GCと Old Parallel GCで行って、Old GCを発生させるな、と。まあ、Old GCが発生しないなら、CMS GCはいらないもんな… #JavaOneJP
2012-04-05 15:01:30RT @doboccho: ググれ:"Java GC write brrier" #jt12_s221
2012-04-05 15:01:53GCにやさしいプログラミング。まず、Large Objectを避ける。Large Objectはアロケートに時間がかかるし、初期化にも時間がかかる。Javaヒープのフラグメンテーションも引き起こす。 #JavaOneJP
2012-04-05 15:02:51RT @yamadamn: 何度も言うようだけどPermGenはそろそろなくなるよー。JRockitと同様、ネイティブ領域で管理されるようになる予定 #jt12_s221 #JavvaOneJP
2012-04-05 15:03:24デカいサイズのオブジェクトは、要注意。OLDに直接わりあてられたり、初期化のコストがあったり、メモリ内の断片化が起こしやすい。 #JavaOneJP #jt12_s221
2012-04-05 15:04:30異なるサイズの大きなオブジェクトが断片化を引き起こす。これをまとめることでオブジェクトへのアクセスも効率化される。基本的には大きなオブジェクトは設計段階であまり作成されないようにすべきと。 #jt12_s221 #JavaOneJP
2012-04-05 15:04:47なるべく、Large Objectは小さい別のオブジェクトにわけろと。そうすれば、一部は短命で処理できるかもしれないし、オブジェクト指向的にも理想的だと。 #JavaOneJP
2012-04-05 15:04:55でかいクラスを作るな、分割できるか考えて設計しろってことか? #javaonejp #jt12_s221
2012-04-05 15:05:05でかいオブジェクトを使うなではなく、本当に使わなければならないのかを、よくよく考えよ。 #JavaOneJP #jt12_s221
2012-04-05 15:05:40GCにやさしいプログラミングその2。データ構造のリサイズを避けろ。ちゃんとコンストラクタで、明示的にサイズを指定しろ。 #JavaOneJP
2012-04-05 15:06:06RT @kimuchi583: デカいサイズのオブジェクトは、要注意。OLDに直接わりあてられたり、初期化のコストがあったり、メモリ内の断片化が起こしやすい。 #JavaOneJP #jt12_s221
2012-04-05 15:06:07配列で確保するようなケースでは、リサイズを極力さけよう。あらかじめサイズ指定のコンストラクタを使うなど。 #JavaOneJp #jt12_s221
2012-04-05 15:06:41RT @tanaka_733: 配列で確保するようなケースでは、リサイズを極力さけよう。あらかじめサイズ指定のコンストラクタを使うなど。 #JavaOneJp #jt12_s221
2012-04-05 15:07:01データのリサイズは、無用なオブジェクトアロケーションを引き起こすと。まあ、新しいサイズのオブジェクトを作って、内容をコピーするとかやるからな… #JavaOneJP
2012-04-05 15:07:21データ構造のリサイズも、できれば抑制せよ。初期化サイズをデフォルトでよいのか、より大きい値にすべきか、考えよ。 #JavaOneJP #jt12_s221
2012-04-05 15:07:26サイズわかってるならList<String> list = new ArrayList(100);みたいにしたほうがいいよと。 #JavaOneJP #jt12_s221
2012-04-05 15:07:35RT @tanaka_733: 配列で確保するようなケースでは、リサイズを極力さけよう。あらかじめサイズ指定のコンストラクタを使うなど。 #JavaOneJp #jt12_s221
2012-04-05 15:07:55昔のバージョンだと思いますがHashMapでリサイズすると無限ループに陥るなんてバグもありましたね RT @tanaka_733: 配列で確保するようなケースでは、リサイズを極力さけよう。あらかじめサイズ指定のコンストラクタを使うなど。 #JavaOneJp #jt12_s221
2012-04-05 15:08:20RT @megascus: オブジェクトプーリングは問題の原因になるかもしれない。キャッシュは気を付けろと。 #jt12_s221 #JavaOneJP
2012-04-05 15:08:33誰かのセッションでのわざとらしい実装を思い出しますな RT @megascus: オブジェクトプーリングは問題の原因になるかもしれない。キャッシュは気を付けろと。 #jt12_s221 #JavaOneJP
2012-04-05 15:09:07