_CrtDumpMemoryLeaks
Zrzuty pamięci bloki w sterty debugowania gdy przeciek pamięci wystąpił (tylko wersja debugowania).
int _CrtDumpMemoryLeaks( void );
Wartość zwracana
_CrtDumpMemoryLeaksZwraca wartość PRAWDA, jeśli występuje przeciek pamięci.W przeciwnym wypadku funkcja zwraca wartość FALSE.
Uwagi
_CrtDumpMemoryLeaks Funkcja określa, czy wystąpił przeciek pamięci, od rozpoczęcia wykonywania programu.Po znalezieniu przeciek informacji nagłówka debugowania dla wszystkich obiektów na stercie po cenach dumpingowych w formie możliwej do odczytania użytkownika.Gdy _DEBUG nie jest zdefiniowana, wzywa do _CrtDumpMemoryLeaks są usuwane w czasie wstępnego przetwarzania.
_CrtDumpMemoryLeaksczęsto nazywa się na koniec wykonywania programu, aby zweryfikować, że cała pamięć przydzielona przez aplikację został zwolniony.Funkcja może być wywoływana automatycznie na zakończenie programu przez włączenie _CRTDBG_LEAK_CHECK_DF pole bitowe z _crtDbgFlag flagi, za pomocą _CrtSetDbgFlag funkcji.
_CrtDumpMemoryLeakswywołania _CrtMemCheckpoint Aby uzyskać bieżący stan sterty, a następnie skanuje Państwo bloków, które nie zostały zwolnione.W przypadku napotkania blok niezwolnionych, _CrtDumpMemoryLeaks wywołania _CrtMemDumpAllObjectsSince do zrzutu informacji dla wszystkich obiektów alokowany na stercie, od rozpoczęcia wykonywania programu.
Domyślnie, wewnętrzne bloki run-time C (_CRT_BLOCK) nie są uwzględnione w operacjach zrzutu pamięci._CrtSetDbgFlag funkcji można włączyć _CRTDBG_CHECK_CRT_DF bit z _crtDbgFlag do uwzględnienia tych bloków w proces wykrywania przecieków.
Aby uzyskać więcej informacji o funkcjach Państwo sterty i _CrtMemState struktury, zobacz Funkcje raportowania stanu sterty.Informacje o jak bloków pamięci są przydzielane, zainicjowany i zarządzane w wersji debugowej bazowy sterty, zobacz Zarządzanie pamięcią i debugowania sterty.
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_CrtDumpMemoryLeaks |
<crtdbg.h> |
Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.
Biblioteki
Debug wersje biblioteki uruchomieniowej c tylko.
Przykład
Przykładowy sposób _CrtDumpMemoryLeaks, zobacz crt_dbg1.
Odpowiednik w programie .NET Framework
Nie dotyczy. Aby wywołać standardowych funkcji C, należy użyć PInvoke. Aby uzyskać więcej informacji, zobacz Przykłady wywołać platformy.