PetscFreeA#
Free one or more memory locations, possibly allocated using coalesced PetscMallocN()
Synopsis#
#include "petscsys.h"
PetscErrorCode PetscFreeA(int n, int lineno, const char *function, const char *filename, void *ptr0, ...)
Not Collective, No Fortran Support
Input Parameters#
n - number of objects to free (at least 1)
lineno - line number to attribute deallocation (typically
__LINE__
)function - function to attribute deallocation (typically
PETSC_FUNCTION_NAME
)filename - file name to attribute deallocation (typically
__FILE__
)ptr0 - first of
n
pointers to free
Notes#
This function is not normally called directly by users, but rather via the macros PetscFree()
, PetscFree2()
, etc.
The pointers are zeroed to prevent users from accidentally reusing space that has been freed.
If the arguments were obtained via PetscMallocA()
, PetscMalloc2()
, PetscMalloc3()
, etc., then the arguments must be passed in the same order to the corresponding PetscFreeA()
, PetscFree2()
, PetscFree3()
, respectively.
See Also#
PetscMallocAlign()
, PetscMallocSet()
, PetscMallocA()
, PetscFree1()
, PetscFree2()
, PetscFree3()
, PetscFree4()
, PetscFree5()
, PetscFree6()
, PetscFree7()
Level#
developer
Location#
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages