Frage

Sandcastle ist nicht in der Lage unsere Klassenbibliothek zu verarbeiten, da sie mit einer OutOfMemoryException Ausnahme während der XSL-Transformation abstürzt.

Was können wir dagegen tun, mit Ausnahme der Hand, kaufen mehr Speicher? Das Problem ist, dass dies unsere Entwickler Maschinen mit 3.3GB Speicher auf einem 32-Bit-Betriebssystem so im Grunde entweder wir auf 64-Bit und mehr Speicher zu aktualisieren haben (was für eine Weile nicht passieren wird) oder ein virtueller Server eingerichtet tun dies mit viel Speicher (was Auswirkungen auf die Produktionsserver wird).

Ich bezweifle ernsthaft, wir die größte Klassenbibliothek in der Welt haben, die Hilfedateien erfordert, so welche Möglichkeiten haben wir? Gibt es eine magische „Nicht mit aus Speicherfehler abstürzen“ -Einstellung, dass wir vergessen? Auszuschalten

War es hilfreich?

Lösung

Wenn Sie auf 32-Bit-Windows-sind, Ihr Benutzer-Prozess nur in der Lage sein wird standardmäßig 2 GB Speicher zu adressieren (3 GB als große Adresse bewusst ausgeführt werden). Das 2 GB ist für alles, was in dem Verfahren verwendet, so dass die .NET-Laufzeit, Standardbibliotheken, Buchung und so weiter alle nehmen ihre Futter. Nach meiner Erfahrung, die etwa 1,5 GB für .NET-Anwendungen auf 32-Bit-Blätter.

Sie können den Zugriff auf mehr Speicher erhalten, indem die große Adresse bewusst Schalter, aber es kommt nicht kostenlos, wenn Sie auf 32-Bit-Windows-sind. Der Umzug in 64-Bit-Windows wird Ihren 32-Bit-Anwendung Zugriff auf den gesamten 32-Bit-Adressraum lassen und Ihnen somit 4 GB adressierbaren Raum geben.

Ich habe vor kurzem einen Blog-Eintrag mit Details über die Speichernutzung für .NET-Anwendungen geschrieben, aber da ich in dänischem Blog, können Sie nicht in der Lage sein, es zu lesen. Wenn Sie jedoch einen Blick haben wollen, ist der Link: http://kodehoved.dk/?p= 156

Sie können auch in diese MSDN-Blog-Post relevant finden: http://blogs.msdn.com/maoni/archive/2007/05/15/64-bit-vs-32-bit.aspx

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top