Hat schon mal jemand Erfahrung mit der SetProcessWorkingSetSize funktion gemacht?
Mich würde interessieren ob es irgendetwas zu beachten gibt wenn man diese funktion benutzt. Generell verschiebt sie bei der benutzung mit diesen Parameter :
anscheinend alle aktuell nicht benötigten daten aus dem RAM in die Auslagerungsdatei. Der Vorteil daran ist das damit der von der Anwendung auch nach dem schließen eines Formulars immer noch belegte RAM anscheinend einfach in die Auslgagerungsdatei verschoben wird.
Mir ist es nur gerade bei SharpDesk aufgefallen. Gleich nach dem Programmstart hat das ganze eine RAM Auslastung von ~10 MB.
Nachdem ich mal alle Formulare ein wenig benutzt habe war die RAM auslastung oftmals auf 20 MB. Jedoch nicht durch ein mem leak, der RAM wurde halt immer nur einmalig von den Formularen belegt. Jedoch wurde er weder nach schließen oder nach eventuellen freigeben der Formulare wieder komplett freigegeben. Zu den Anfangs 10 MB gab es keinen weg zurück. Der einmalig von den Formularen reservierte Speicher wurde niemals freigegeben. Mit dem aufrufen der SetProcessWorkingSetSize ist die RAM Auslastung dann sofort wieder auf 10 MB runter gegangen. Also wurde scheinbar alles aus dem RAM geschmissen was aktuell nicht benötigt wird.
Nach benutzen sind auch keine weiteren Nebeneffekte aufgetreten. Kein stocken oder nachladen bei Anwendung oder System.
laut Win32SDK steht in der Beschreibung der funktion :
Zitat:
BOOL SetProcessWorkingSetSize(
HANDLE hProcess, // open handle to the process of interest DWORD dwMinimumWorkingSetSize, // specifies minimum working set size DWORD dwMaximumWorkingSetSize // specifies maximum working set size );
If both dwMinimumWorkingSetSize and dwMaximumWorkingSetSize have the value 0xffffffff, the function temporarily trims the working set of the specified process to zero. This essentially swaps the process out of physical RAM memory.
Ich bin da nur lieber etwas zögerlich ehe ich solche OS nahen funktionen einsetze. Könnt ihr mir zur benutzung dieser funktion genaueres sagen?
Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.