return g_pfnSetThreadDescription(hThread, lpThreadDescription);
}
-DWORD
-WszGetWorkingSet()
-{
- WINWRAPPER_NO_CONTRACT(SetLastError(ERROR_OUTOFMEMORY); return 0;);
-
- DWORD dwMemUsage = 0;
-
- // Consider also calling GetProcessWorkingSetSize to get the min & max working
- // set size. I don't know how to get the current working set though...
- PROCESS_MEMORY_COUNTERS pmc;
-
- HINSTANCE hPSapi;
- typedef BOOL (GET_PROCESS_MEMORY_INFO)(HANDLE, PROCESS_MEMORY_COUNTERS*, DWORD);
- GET_PROCESS_MEMORY_INFO* pGetProcessMemoryInfo;
-
- hPSapi = WszLoadLibrary(W("psapi.dll"));
- if (hPSapi == NULL) {
- _ASSERTE(0);
- return 0;
- }
-
- pGetProcessMemoryInfo =
- (GET_PROCESS_MEMORY_INFO*)GetProcAddress(hPSapi, "GetProcessMemoryInfo");
- // 403746: Prefix correctly complained about
- // pGetProcessMemoryInfo != NULL assertion.
- if (pGetProcessMemoryInfo == NULL) {
- _ASSERTE(0);
- FreeLibrary(hPSapi);
- return 0;
- }
- PREFIX_ASSUME(pGetProcessMemoryInfo != NULL);
-
- BOOL r = pGetProcessMemoryInfo(GetCurrentProcess(), &pmc, (DWORD) sizeof(PROCESS_MEMORY_COUNTERS));
- FreeLibrary(hPSapi);
- _ASSERTE(r);
-
- dwMemUsage = (DWORD)pmc.WorkingSetSize;
-
- return dwMemUsage;
-}
-
-
-SIZE_T
-WszGetPagefileUsage()
-{
- WINWRAPPER_NO_CONTRACT(SetLastError(ERROR_OUTOFMEMORY); return 0;);
-
- SIZE_T dwPagefileUsage = 0;
-
- typedef BOOL (WINAPI FnGetProcessMemoryInfo)(HANDLE, PROCESS_MEMORY_COUNTERS *, DWORD);
-
- HMODULE hPSApi = WszLoadLibrary(W("Psapi.dll"));
- if (hPSApi== NULL)
- {
- return 0;
- }
-
- FnGetProcessMemoryInfo *pfnGetProcessMemoryInfo = reinterpret_cast<FnGetProcessMemoryInfo *>(
- GetProcAddress(hPSApi, "GetProcessMemoryInfo"));
-
- if (pfnGetProcessMemoryInfo != NULL)
- {
- PROCESS_MEMORY_COUNTERS pmc;
- ZeroMemory(&pmc, sizeof(pmc));
-
- if (pfnGetProcessMemoryInfo(GetCurrentProcess(), &pmc, sizeof(pmc)))
- {
- dwPagefileUsage = pmc.PagefileUsage;
- }
- }
-
- FreeLibrary(hPSApi);
- hPSApi = NULL;
-
- return dwPagefileUsage;
-}
-
-DWORD
-WszGetProcessHandleCount()
-{
- WINWRAPPER_NO_CONTRACT(SetLastError(ERROR_OUTOFMEMORY); return 0;);
-
- DWORD dwHandleCount = 0;
-
- if (!GetProcessHandleCount(GetCurrentProcess(), &dwHandleCount))
- {
- dwHandleCount = 0;
- }
-
- return dwHandleCount;
-}
-
#endif //!FEATURE_PAL