_CrtDoForAllClientObjects
Zieht eine von der Anwendung bereitgestellte Funktion für alle Typen _CLIENT_BLOCK den Heap (nur Debugversion).
void _CrtDoForAllClientObjects(
void ( * pfn )( void *, void * ),
void *context
);
Parameter
pfn
Zeiger auf die Rückruffunktion der von der Anwendung bereitgestellte Funktion.Der erste Parameter an diese Funktion zeigt auf die Daten.Der zweite Parameter ist der Kontextzeiger, der dem Aufruf von _CrtDoForAllClientObjectsübergeben wird.context
Zeiger auf den von der Anwendung bereitgestellt auf die von der Anwendung bereitgestellte Funktion zu übergebenden Kontext.
Hinweise
Die _CrtDoForAllClientObjects-Funktion durchsucht die verknüpfte Liste des Heaps für Speicherblöcke mit dem _CLIENT_BLOCK-Typ und ruft die von der Anwendung bereitgestellte Funktion auf, wenn ein Block dieses Typs gefunden wird.Der gesuchte - Block und der context-Parameter werden als Argumente an die von der Anwendung bereitgestellte Funktion übergeben.Während des Debuggens kann eine Anwendung eine bestimmte Gruppe von Zuordnungen verfolgen, indem Sie explizit die Debugheapfunktionen aufruft, um den Arbeitsspeicher zuordnen. Das bedeutet, dass die _CLIENT_BLOCK-Blockformat Blöcke zugewiesen werden.Diese Blöcke können dann separat nachverfolgt werden und während des Speicherverlusterkennungs- und Speicherzustands an berichtens nicht gemeldet werden.
Wenn das _CRTDBG_ALLOC_MEM_DF Bitfeld des _crtDbgFlag keine Flags aktiviert ist, _CrtDoForAllClientObjects kehrt sofort zurück.Wenn _DEBUG nicht definiert wird, werden Aufrufe _CrtDoForAllClientObjects während des Präprozessorlaufs entfernt.
Weitere Informationen zu den _CLIENT_BLOCK-Typ und wie er von anderen Funktionen Debuggen verwendet werden kann, finden Sie unter Blocktypen auf dem Debugheap.Weitere Informationen zum Speicherblöcke in der Debugversion des Basisheaps zugeordnet, initialisiert und verwaltet werden, finden Sie unter Speicherverwaltung und Debugheap.
Wenn pfnNULLungültige Parameter ist, wird der Ereignishandler aufgerufen, wie in Parametervalidierungbeschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, wird errno, _doserrno, _sys_errlist und _sys_nerr zu EINVAL festgelegt, und die Funktion gibt zurück.
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_CrtDoForAllClientObjects |
<crtdbg.h> und <errno.h> |
Weitere Informationen finden Sie unter Kompatibilität Kompatibilität in der Einführung.
Bibliotheken: Debugversionen von nur CRT-Bibliotheks-Funktionen .
Beispiel
Weitere Informationen finden Sie unter dfacobjs.
.NET Framework-Entsprechung
Nicht zutreffend. Um die Standard-C-Funktion aufrufen, verwenden Sie PInvoke. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.