タグ

ブックマーク / torutk.hatenablog.jp (2)

  • finalizeとJavaヒープメモリ - torutkのブログ

    JavaGUIアプリケーション(ネイティブライブラリ使用)をしばらく実行していると、だんだん重くなり、JavaヒープメモリをJDKのjconsoleツールで調べると、上限に張り付きFull GCが頻繁に発生してますが、グラフが下がらないという状況がありました。 同じくJDKのjvisualvmツールでヒープに占めるオブジェクトを調査すると(「サンプラ」タブの「メモリー」ボタンを押し、ヒープヒストグラムを表示)、あるクラスのインスタンスが100万個以上と同数のjava.lang.ref.Finalizerが存在しています。 ロジック的なメモリリークではなく、GCのファイナライズに関して問題が生じているようです。問題のクラスは、ネイティブライブラリを使用していおり、jconsoleでFinalizerスレッドのダンプを見ると、そのクラスのfinalizeでネイティブ呼び出しをしています。 参

    finalizeとJavaヒープメモリ - torutkのブログ
    manaten
    manaten 2017/04/18
  • JDKのフォントをメイリオに - torutkのブログ

    Windows VistaでJava(Swing)のフォントをClearType効かせることを追求してみました。 まずは、日経BP ITProに掲載されている櫻庭氏の記事を参照しました。 「Java SE 6完全攻略」第17回 文字に対するアンチエイリアス | 日経 xTECH(クロステック) 記事によると、Windows環境では日語の小さなフォント(実験では20ポイント以下)はアンチエイリアス(LCD)がかかりません。小さいといっても普通のGUIプログラムを作るときはほとんどの文字を12〜14ポイントで作るので、事実上日語はClearTypeが適用できません。 これは、おそらくJDKが使用しているフォントがMS ゴシックであり、小さなサイズのときはTrueTypeではなくビットマップデータを表示するフォントであるためではないかと思っています。 Windows Vistaでは、メイリオ

    JDKのフォントをメイリオに - torutkのブログ
  • 1