version 1.1.1.2, 2000/04/14 11:07:58 |
version 1.1.1.3, 2000/12/01 14:48:24 |
Line 619 void GC_finalize() |
|
Line 619 void GC_finalize() |
|
void GC_enqueue_all_finalizers() |
void GC_enqueue_all_finalizers() |
{ |
{ |
struct finalizable_object * curr_fo, * prev_fo, * next_fo; |
struct finalizable_object * curr_fo, * prev_fo, * next_fo; |
ptr_t real_ptr, real_link; |
ptr_t real_ptr; |
register int i; |
register int i; |
int fo_size; |
int fo_size; |
|
|
Line 693 GC_API void GC_finalize_all() |
|
Line 693 GC_API void GC_finalize_all() |
|
ENABLE_SIGNALS(); |
ENABLE_SIGNALS(); |
} |
} |
#endif |
#endif |
|
|
|
/* Returns true if it is worth calling GC_invoke_finalizers. (Useful if */ |
|
/* finalizers can only be called from some kind of `safe state' and */ |
|
/* getting into that safe state is expensive.) */ |
|
int GC_should_invoke_finalizers GC_PROTO((void)) |
|
{ |
|
return GC_finalize_now != 0; |
|
} |
|
|
/* Invoke finalizers for all objects that are ready to be finalized. */ |
/* Invoke finalizers for all objects that are ready to be finalized. */ |
/* Should be called without allocation lock. */ |
/* Should be called without allocation lock. */ |