Memory utilities [src]
Memory utilities
These functions cover two main areas.
First, some simple utility functions over the underlying g_malloc()
/
g_free()
functions. Memory that is allocated and freed using these
functions is interchangeable with any other GLib library.
Second, a pair of functions, vips_tracked_malloc()
and vips_tracked_free()
,
which are NOT compatible. If you g_free()
memory that has been
allocated with vips_tracked_malloc()
you will see crashes.
The tracked functions are only suitable for large allocations internal to the library, for example pixel buffers. libvips watches the total amount of live tracked memory and uses this information to decide when to trim caches.
Functions
vips_malloc()
vips_strdup()
vips_tracked_free()
vips_tracked_aligned_free()
vips_tracked_malloc()
vips_tracked_aligned_alloc()
vips_tracked_get_mem()
vips_tracked_get_mem_highwater()
vips_tracked_get_allocs()
vips_tracked_open()
vips_tracked_close()
vips_tracked_get_files()