Udostępnij za pośrednictwem


_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.

Zobacz też

Informacje

Debugowania procedur