タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

.NETとgcに関するmurasukeのブックマーク (2)

  • .NET Frameworkのメモリ管理と断片化問題(.NETアプリケーションを長期連続実行するのは要注意) - torutkのブログ

    C#とJavaの言語選定にあたり、実行環境の比較をするため、ガベージコレクタについて調べていました。 .NET Frameworkのガベージコレクション方式は世代別GCですが、Javaとは随分異なっています。特に顕著に異なっているのがLOH(Large Object Heap)と呼ばれる大きなサイズのオブジェクトを格納する専用ヒープ領域がある点です。現在のバージョンでは、85KB以上のサイズのオブジェクトは世代別管理のヒープ(generation 0)ではなく、このLOHに割り当てられます。 この仕組みについては、MSDNマガジン(オンライン)の記事に詳しくあります(以下URL)。 CLR徹底解剖:大きなオブジェクトヒープの秘密 LOHは、第2世代(Javaで言えばOld世代)のGCと同じタイミングでGCがかかります。LOHでは、オブジェクトか回収された後、コンパクションを実施しないため、

    .NET Frameworkのメモリ管理と断片化問題(.NETアプリケーションを長期連続実行するのは要注意) - torutkのブログ
  • .NETアプリを軽快にするためのガベージ・コレクション講座(1/4) - @IT

    マウスやコントローラなどのデバイス入力から、映像や音声の出力までを限りなく実時間に近いタイミングで処理しつづけなければならないアプリケーションがある。身近なところではゲームをその筆頭に挙げることができるだろう。また、近年は様々なジャンルのアプリケーションでコモディティ化が起こっており、機能面での差別化が困難になってきたことから、非機能要求である応答性の良さで製品を選ぶという人も増えているのではなかろうか。その意味では、デスクトップ上で動くアプリケーションはほとんどすべてリアルタイム性が求められているといえる。 従来、ガベージ・コレクション(以下GC)により非同期的にスレッドが停止する.NETアプリケーションは、応答性が重視される分野には不向きだと言われてきた。これはある意味では事実であるものの、実際には工夫次第でGCの影響をかなり軽減することが可能である。何より、「XNA Field」や「

  • 1