Wrapping libunit's malloc() and free() calls for logging purposes.
This change aids heap usage analysis in applications. The alloc and free functions are also required for lvlhash due to the upcoming threading support, because using main nxt_memalign() and nxt_free() isn't safe in a multithreaded app environment. The reason is that these functions may use thread-local structures which aren't initialized properly in applications.
This commit is contained in:
@@ -81,6 +81,22 @@ nxt_realloc(void *p, size_t size)
|
||||
}
|
||||
|
||||
|
||||
/* nxt_lvlhsh_* functions moved here to avoid references from nxt_lvlhsh.c. */
|
||||
|
||||
void *
|
||||
nxt_lvlhsh_alloc(void *data, size_t size)
|
||||
{
|
||||
return nxt_memalign(size, size);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
nxt_lvlhsh_free(void *data, void *p)
|
||||
{
|
||||
nxt_free(p);
|
||||
}
|
||||
|
||||
|
||||
#if (NXT_DEBUG)
|
||||
|
||||
void
|
||||
|
||||
Reference in New Issue
Block a user