Polaris: Zombie.cc File Reference

Zombie.cc File Reference

Go to the source code of this file.

Functions

void add_zombie_list (Listable *)
int check_zombie_list (void *)
 Put the Listable object on the graveyard list and set the number of references to 0.
void dump_zombie_stats ()
 Print Zombie stats.
void dec_refs_delete_or_zombie (Listable *ptr)
 "Clean up:C++ garbage collection" _Byte_, 21(1):157(2)

Variables

int max_zombies = 0
int cur_zombies = 0
int graveyard_size = 0
coffin graveyard [DELETE_MAX] = {0, 0}
 The graveyard is the list of Listable objects which have been deleted globally but must be Zombied, instead.


Function Documentation

void add_zombie_list Listable  ) 
 

Definition at line 53 of file Zombie.cc.

int check_zombie_list void *   ) 
 

Put the Listable object on the graveyard list and set the number of references to 0.

Definition at line 59 of file Zombie.cc.

void dump_zombie_stats  ) 
 

Print Zombie stats.

Definition at line 67 of file Zombie.cc.

References cur_zombies, and max_zombies.

void dec_refs_delete_or_zombie Listable ptr  ) 
 

"Clean up:C++ garbage collection" _Byte_, 21(1):157(2)

; p_assert(count>0,"possible cycle in LiveWrapper pointer graph") ; p_warning("possible cycle in LiveWrapper pointer graph")

... only one ref -- it will be deleted

... remove count due to containing LiveWrapper.

... will call DTOR and convert to Zombie if there's any

... outstanding references left.

Definition at line 74 of file Zombie.cc.

References context.

Referenced by LiveWrapper::delete_object(), and LiveWrapper::object().


Variable Documentation

int max_zombies = 0
 

Compute run-time stats concerning Zombie use:

Definition at line 12 of file Zombie.cc.

Referenced by dump_zombie_stats().

int cur_zombies = 0
 

Definition at line 13 of file Zombie.cc.

Referenced by dump_zombie_stats(), and Zombie::~Zombie().

int graveyard_size = 0
 

Definition at line 48 of file Zombie.cc.

coffin graveyard[DELETE_MAX] = {0, 0}
 

The graveyard is the list of Listable objects which have been deleted globally but must be Zombied, instead.

Definition at line 50 of file Zombie.cc.

 © 1995-2005 University of Illinois, Urbana-Champaign. All rights reserved.  Fri Mar 25 23:06:34 2005