_free_dbg
Zwalnia blok pamięci w stercie (tylko wersja debugowania).
void _free_dbg(
void *userData,
int blockType
);
Parametry
userData
Wskaźnik do bloku pamięci przydzielone być zwalniane.blockType
Typ bloku pamięci przydzielone do zwolniona: _CLIENT_BLOCK, _NORMAL_BLOCK, lub _IGNORE_BLOCK.
Uwagi
_free_dbg Funkcja jest w wersji debugowej z wolnego funkcji.Gdy _DEBUG nie jest zdefiniowana, każde wywołanie _free_dbg jest zredukowana do wywołania free.Obie free i _free_dbg wolnego bloku pamięci w stercie bazowy, ale _free_dbg użytą dwie funkcje debugowania: możliwość przechowywania zwolnionej bloki sterty połączonej liście symulacji warunków braku pamięci i parametru typu bloku, aby zwolnić alokacji określonych typów.
_free_dbgwykonuje sprawdzenie ważności na wszystkich określonych plików i lokalizacje bloku przed wykonaniem operacji wolna.Aplikacja nie oczekuje się do dostarczenia tych informacji.Gdy blok pamięci jest zwalniany, menedżera sterty debugowania automatycznie sprawdza spójność buforów po obu stronach część użytkownika i wystawia raport o błędach, jeśli zastępowanie wystąpił.Jeśli _CRTDBG_DELAY_FREE_MEM_DF pole bitowe z _crtDbgFlag jest ustawiona flaga, blok zwalniane jest wypełniona przypisanej wartości 0xDD, _FREE_BLOCK typu blokowania i trzymane w połączonej listy bloków pamięci sterty.
W przypadku wystąpienia błędu w zwalniania pamięci, errno jest ustawiona z informacji z systemu operacyjnego na charakter awarii.Aby uzyskać więcej informacji, zobacz errno, _doserrno, _sys_errlist i _sys_nerr.
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.Informacje o alokacji typów bloku i w jaki sposób są używane, zobacz Typów bloków na stercie debugowania.Aby uzyskać informacje dotyczące różnic między wywołaniem funkcji standardowego sterty i jej wersję debugowania w trybie debugowania aplikacji, zobacz przy użyciu wersji Versus the Base wersja do debugowania.
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_free_dbg |
<crtdbg.h> |
Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.
Przykład
Przykładowy sposób _free_dbg, zobacz crt_dbg2.
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.