1

SandCastleは、XSL変換中にOutOfMemoryException例外でクラッシュするため、クラスライブラリを処理できません。

明らかなことを除いて、より多くのメモリを購入することを除いて、私たちはそれについて何ができますか?問題は、これが32ビットOS上に3.3GBのメモリを搭載した開発者のマシンであるため、基本的に64ビット以上のメモリにアップグレードするか(しばらくは発生しません)、仮想サーバーを次のようにセットアップする必要があることです。大量のメモリを使用してこれを実行します(これは本番サーバーに影響します)。

ヘルプファイルを必要とする世界最大のクラスライブラリがあるのではないかと真剣に疑っています。では、どのようなオプションがありますか?オフにするのを忘れた魔法の「メモリ不足エラーでクラッシュしない」設定はありますか?

4

1 に答える 1

1

32ビットWindowsを使用している場合、ユーザープロセスはデフォルトで2 GBのメモリしかアドレス指定できません(3 GBはラージアドレス対応として実行されます)。2 GBはプロセスのすべてに使用されるため、.NETランタイム、標準ライブラリ、予約などはすべて問題ありません。私の経験では、32ビットの.NETアプリケーション用に約1.5GBが残っています。

ラージアドレス認識スイッチを使用すると、より多くのメモリにアクセスできますが、32ビットWindowsを使用している場合は無料では提供されません。64ビットWindowsに移行すると、32ビットアプリケーションが32ビットアドレス空間全体にアクセスできるようになり、4GBのアドレス可能空間が提供されます。

最近、.NETアプリケーションのメモリ使用量について詳しく説明したブログエントリを作成しましたが、デンマーク語でブログを書いているため、読むことができない場合があります。ただし、ご覧になりたい場合は、リンクは次のとおりです。http: //kodehoved.dk/ ?p=156

このMSDNブログ投稿も関連していることがあります:http://blogs.msdn.com/maoni/archive/2007/05/15/64-bit-vs-32-bit.aspx

于 2009-07-20T08:52:13.013 に答える