I've been trying to optimize the Windows program I am developing, trying to find the best data structures that will minimize memory use. It loads large blocks of data, so with huge files, it can use a large amount of RAM.
For memory measurement, I have been using GlobalMemoryStatusEx. See: http://msdn.microsoft.com/en-us/library/aa366589(VS.85).aspx
I believe this works for most flavors of Windows, from Windows 2000 right up to and including Windows Vista.
Is this the preferred way to measure memory use from within a program, or is there another, better way?
Addenum: Found the Stackoverflow question: How to get memory usage under Windows in C++ which references GetProcessMemoryInfo
I'll try that one out.