Main Page   Reference Manual   Namespace List   Compound List   Namespace Members   Compound Members   File Members  

Functions
Invisible Allocations
Collaboration diagram for Invisible Allocations:

Functions

void libcwd::make_invisible (void const *void_ptr)
 Make allocation pointed to by ptr invisible.The allocation pointed to by ptr is made invisible; it won't show up anymore in the overview of allocated memory. More...
 
void libcwd::make_all_allocations_invisible_except (void const *ptr)
 Make all current allocations invisible except the given pointer.All allocations, except the given pointer, are made invisible; they won't show up anymore in the overview of allocated memory. More...
 
void libcwd::make_exit_function_list_invisible (void)
 Make allocations done in libc.so:__new_exitfn invisible.This makes the allocation done in __new_exitfn (libc.so) invisible because it is not freed until after all __cxa_atexit functions have been called and would therefore always falsely trigger a memory leak detection. This function can be called first thing in main(). More...
 
void libcwd::set_invisible_on (void)
 Make all future allocations invisible.All following allocations are made invisible; they won't show up anymore in the overview of allocated memory. More...
 
void libcwd::set_invisible_off (void)
 Cancel a call to set_invisible_on.See set_invisible_on.
 

Detailed Description


Detailed Description

Allocated memory blocks can be made invisible: They won't show up in the overview of allocated memory anymore.  Even more, the corresponding alloc_ct is destroyed: find_alloc will not find them anymore.  There is no other effect, test_delete will still work and they still can be deleted in the normal way.

Function Documentation

void libcwd::make_all_allocations_invisible_except ( void const *  ptr)

Make all current allocations invisible except the given pointer.All allocations, except the given pointer, are made invisible; they won't show up anymore in the overview of allocated memory.

If you want to make all allocations invisible, just pass NULL as parameter.

See Also
Invisible Allocations
Overview Of Allocated Memory

Example:

void libcwd::make_exit_function_list_invisible ( void  )

Make allocations done in libc.so:__new_exitfn invisible.This makes the allocation done in __new_exitfn (libc.so) invisible because it is not freed until after all __cxa_atexit functions have been called and would therefore always falsely trigger a memory leak detection. This function can be called first thing in main().

See Also
Invisible Allocations
Overview Of Allocated Memory

Example:

References libcwd::make_invisible().

void libcwd::make_invisible ( void const *  void_ptr)

Make allocation pointed to by ptr invisible.The allocation pointed to by ptr is made invisible; it won't show up anymore in the overview of allocated memory.

See Also
Invisible Allocations
Overview Of Allocated Memory

Example:

References libcwd::channels::dc::core.

Referenced by libcwd::make_exit_function_list_invisible(), and libcwd::marker_ct::~marker_ct().

void libcwd::set_invisible_on ( void  )
inline

Make all future allocations invisible.All following allocations are made invisible; they won't show up anymore in the overview of allocated memory.

See Also
Invisible Allocations
Overview Of Allocated Memory

Example:

gtk_init(&argc, &argv);

Note: In the threaded case, this isn't blazing fast (it is in the non-threaded case). You shouldn't use it inside tight loops when using libcwd_r.

Referenced by cwdebug_alloc(), and cwdebug_watch().

Copyright © 2001 - 2004 Carlo Wood.  All rights reserved.