JDK7のJavaDocとGCの話
JDK7のJavaDoc発見
どんな機能が入っているかあとで見てみよう。
コレ⇒http://download.java.net/jdk7/docs/
と、思ったら中身の充実度が・・・・orz
Java7でG1ガベージコレクションが実装された。
Java6までのは
YOUNGGCとOLDGC
の2段だったんだけども、
YONUGGCでは停止はなしでOLDGCで2度の処理のためにすべての機能を停止している。 それで長い待ち時間が発生していた。
Java7のG1GCでは
YOUNGGCで1度機能停止、
OLDGCで1度機能停止ってことで停止タイミングを分散している。
これで、停止時間が安定的になり映像とかはより滑らかになると思う。
あとメモリ領域をJava6まではOLDとYOUNGに物理的に分割していたけども
Java7では同じ領域に存在しているみたい。ってことでより大きなメモリ
を確保できるようになる。
また、Java6まではOLD領域が空いててもYOUNG領域がいっぱいになるとGCが走ったりしてアプリの作りによってはGCが頻発してパフォーマンスが
でない場合もあるけども、Java7ではメモリ統合されGCトリガーがOLD+YOUNG領域の充填度で判断するようになると思うから、ほんとにメモリが足りなくなった時にGCが動くようになったりしてリソースの効率化が図れる。