Aracılığıyla paylaş


_free_dbg

Yığındaki bir bellek bloğunu serbest bırakır (yalnızca hata ayıklama sürümü).

Sözdizimi

void _free_dbg(
   void *userData,
   int blockType
);

Parametreler

userData
Boşaltılacak ayrılan bellek bloğunun işaretçisi.

blockType
Boşaltılacak ayrılmış bellek bloğunun türü: _CLIENT_BLOCK, _NORMAL_BLOCKveya _IGNORE_BLOCK.

Açıklamalar

İşlev _free_dbg , işlevin free hata ayıklama sürümüdür. Tanımlanmadığında _DEBUG , çağrısının her _free_dbg biri öğesine yapılan çağrıya freeindirgenir. _free_dbg Hem hem de free temel yığındaki bir bellek bloğunu serbest bırakır, ancak _free_dbg iki hata ayıklama özelliği içerir: boş blokları yığının bağlı listesinde tutarak düşük bellek koşullarının benzetimini yapma ve belirli ayırma türlerini boşaltmak için bir blok türü parametresi.

_free_dbg , ücretsiz işlemi gerçekleştirmeden önce belirtilen tüm dosyalarda ve blok konumlarında geçerlilik denetimi gerçekleştirir. Uygulamanın bu bilgileri sağlaması beklenmiyor. Bir bellek bloğu serbest olduğunda, hata ayıklama yığını yöneticisi kullanıcı bölümünün her iki tarafındaki arabelleklerin bütünlüğünü otomatik olarak denetler. Üzerine yazma algılarsa bir hata raporu oluşturur. Bayrağın _CRTDBG_DELAY_FREE_MEM_DF _crtDbgFlag bit alanı ayarlanırsa, serbest tutulan blok 0xDD değeriyle doldurulur, blok türü atanır _FREE_BLOCK ve yığının bağlı bellek blokları listesinde tutulur.

Bellek boşaltılırken bir hata oluşursa, errno işletim sisteminden hatanın niteliğine ilişkin bilgilerle ayarlanır. Daha fazla bilgi için bkz. errno, _doserrno, _sys_errlistve _sys_nerr.

Temel yığının hata ayıklama sürümünde bellek bloklarının nasıl ayrıldığı, başlatıldığı ve yönetildiğini öğrenmek için bkz . CRT hata ayıklama yığını ayrıntıları. Ayırma bloğu türleri ve bunların nasıl kullanıldığı hakkında bilgi için bkz . Hata ayıklama yığınındaki blok türleri. Standart yığın işlevini çağırma ile hata ayıklama sürümü arasındaki farklar hakkında bilgi için bkz . Yığın ayırma işlevlerinin hata ayıklama sürümleri.

Gereksinimler

Yordam Gerekli başlık
_free_dbg <crtdbg.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Örnek

nasıl kullanılacağına _free_dbgilişkin bir örnek için bkz crt_dbg2. .

Ayrıca bkz.

Hata ayıklama yordamları
_malloc_dbg