Tôi có một chương trình cần rất nhiều bộ nhớ và nó bị treo ngay khi không gian địa chỉ ảo 2GB được tiếp cận. Trình thám hiểm quy trình Sysinternals hiển thị cột này là "kích thước ảo". Làm cách nào để xác định "kích thước ảo" này với mã C (hoặc C++)?Cách xác định quy trình "kích thước ảo" (WinXP)?
Ok, tôi phải truy vấn bộ đếm hiệu suất cho "Byte ảo". Perfmon hiển thị chuỗi truy vấn (hoặc cách nó được gọi) như, ví dụ, '\ Process (firefox) \ Virtuelle Größe' trên cài đặt Win XP của Đức của tôi.
Làm cách nào để xác định chuỗi truy vấn cho 'quy trình hiện tại' và có tên không được bản địa hóa cho nó không?
Tôi đoán điều này sẽ là những gì ProcessExplorer hiển thị trong cột 'private byte', vì vậy nó không phải là những gì tôi đang tìm kiếm. – theller
PROCESS_MEMORY_COUNTERS_EX.PrivateUsage giống với VM Size trong Task Manager theo http://msdn.microsoft.com/en-us/library/aa965225 (VS.85).aspx. – dalle
Trong khi kích thước VM cũng không phải là những gì tôi đang tìm kiếm trang MSDN bạn đã đề cập có những gì tôi cần: MEMORYSTATUSEX.ullTotalVirtual – MEMORYSTATUSEX.ullAvailVirtual – theller