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

Invisible Allocations
[Overview Of Allocated Memory]


Functions

void libcwd::make_invisible (void const *ptr)
 Make allocation pointed to by ptr invisible.
void libcwd::make_all_allocations_invisible_except (void const *ptr)
 Make all current allocations invisible except the given pointer.
void libcwd::make_exit_function_list_invisible (void)
 Make allocations done in libc.so:__new_exitfn invisible.
void libcwd::set_invisible_on (void)
 Make all future allocations invisible.
void libcwd::set_invisible_off (void)
 Cancel a call to set_invisible_on.

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:

void libcwd::make_invisible void const *  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:

void set_invisible_off void   )  [inline]
 

Cancel a call to set_invisible_on.

See set_invisible_on

void 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:

 Debug(set_invisible_on());
 gtk_init(&argc, &argv);
 Debug(set_invisible_off());

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.

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