Frage : Vorhandenes Gedächtnis für eine Anwendung x86 in x64 Windows kennzeichnen

Ich schreibe eine Anwendung, die laufen muss, während x86 unabhängig davon die Wirt Betriebssystem.

My Anwendung viele Abbildungen auf Schirm lädt, und abhängig von der Größe und der Zahl den Abbildungen, die angezeigt werden, können die Gedächtnisnachfragen ziemlich hoch werden.  Um zu helfen „des unzulänglichen Gedächtnisses“ zu vermeiden Störungen, addierte ich Code der die Menge des körperlichen RAM vorhanden gefangennimmt bevor ich Ladenabbildungen anfange und ich den verwende um zu wissen an welchem Punkt mein Gedächtnisverbrauch seine limit.

This Arbeiten fein in einem 32-Bitwirt erreicht aber nicht in einem 64-bithost.

If eine Maschine 8GB von RAM hat, eine 32-Bitanwendung (scheinbar) kann über 1.5GB von RAM jedoch nur verwenden, obgleich ich nicht finden kann irgendwelche definitiven zu rechtfertigen Zahlen sich dass - dieses ist einfach meine Beobachtungen testing.

My vom Programm kann denken dass es gibt 6GB des Gedächtnisses vorhanden, aber es Störungen heraus mit „unzulänglichem Gedächtnis“ weites earilier.


Is dort irgendeine Weise, die Menge des Gedächtnisses zu lokalisieren, die einer 32-Bitanwendung zugeteilt werden KANN?

Currently verwende ich das folgende, um vorhandenes Gedächtnis Bedarfs- zu kennzeichnen:

verdunkeln computer_info als neues Devices.ComputerInfo
schwaches availableMemory als ULong = computer_info.AvailablePhysicalMemory

Antwort : Vorhandenes Gedächtnis für eine Anwendung x86 in x64 Windows kennzeichnen

AvailableVirtualMemory dieses ist Ihre Begrenzung. Es ist ungefähr 2GB des 4GB auf 32 Bitsystemen.

Weitere Lösungen  
 
programming4us programming4us