Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Informacje o zestawie roboczym

Zestaw roboczy procesu jest ilość pamięci fizycznie przypisanej do kontekstu procesu. PsaPI umożliwia tworzenie migawek zestawu roboczego lub monitorowanie zestawu roboczego.

Funkcja QueryWorkingSet lub QueryWorkingSetEx wypełnia bufor migawką informacji dla każdej strony w bieżącym zestawie roboczym określonego procesu. Funkcja zgłasza tylko te strony, które są fizycznie obecne w dokładnym momencie, w którym jest wywoływana.

Możesz użyć monitorowania zestawu roboczego, aby dowiedzieć się, ile dodatkowej pamięci RAM zajmuje określona operacja (na przykład zapisywanie pliku). Aby rozpocząć monitorowanie zestawu roboczego, wywołaj funkcję InitializeProcessForWsWatch. Nie wszystkie procesy umożliwiają odczytywanie informacji o zestawie roboczym, więc upewnij się, że funkcja zwraca wartość niezerową, zanim będziesz kontynuować. Następnie wywołaj funkcję GetWsChanges. Ta funkcja zgłasza tylko strony, które zostały załadowane w pamięci od czasu rozpoczęcia monitorowania zestawu roboczego. Funkcja zwraca dane w tablicy struktur PSAPI_WS_WATCH_INFORMATION, jedną strukturę dla każdej nowej strony dodanej do zestawu roboczego procesu. Struktura informuje o tym, które strony znajdują się w pamięci i co spowodowało, że system je stronicuje.

Funkcja EmptyWorkingSet przyjmuje uchwyt procesu. Usuwa jak najwięcej stron z zestawu roboczego danego procesu. Ta operacja jest przydatna głównie do testowania i dostrajania. Należy pamiętać, że funkcja SetProcessWorkingSetSize wykonuje to samo, jeśli przekażesz ją -1 dla minimalnych i maksymalnych rozmiarów.

Zestaw Roboczy