__MALLOC_LOCK(3) NEWLIB __MALLOC_LOCK(3)NAME
2.25 `__malloc_lock', `__malloc_unlock'--lock malloc pool
SYNOPSIS
#include <malloc.h>
void __malloc_lock (struct _reent *REENT);
void __malloc_unlock (struct _reent *REENT);
DESCRIPTION
The `malloc' family of routines call these functions when they need to
lock the memory pool. The version of these routines supplied in the
library use the lock API defined in sys/lock.h. If multiple threads of
execution can call `malloc', or if `malloc' can be called reentrantly,
then you need to define your own versions of these functions in order
to safely lock the memory pool during a call. If you do not, the mem‐
ory pool may become corrupted.
A call to `malloc' may call `__malloc_lock' recursively; that is,
the sequence of calls may go `__malloc_lock', `__malloc_lock', `__mal‐
loc_unlock', `__malloc_unlock'. Any implementation of these routines
must be careful to avoid causing a thread to wait for a lock that it
already holds.
SEE ALSO__malloc_lock is part of the library. The full documentation for is
maintained as a Texinfo manual. If info and are properly installed at
your site, the command
info
will give you access to the complete manual.
NEWLIB April 2010 __MALLOC_LOCK(3)