X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fmono-gc.h;h=f2ff92b53b82cd2532217226f4b14f76fa367cb6;hb=aa8abd1f58edd74206c26094543b0da55a941db3;hp=a76aea5bfb7ebbcc92d5cd11a5e4a4b3e808944e;hpb=6b6435d1b3206b0162c37e5ecce8d9a699fe6467;p=mono.git diff --git a/mono/metadata/mono-gc.h b/mono/metadata/mono-gc.h index a76aea5bfb7..f2ff92b53b8 100644 --- a/mono/metadata/mono-gc.h +++ b/mono/metadata/mono-gc.h @@ -5,12 +5,23 @@ #ifndef __METADATA_MONO_GC_H__ #define __METADATA_MONO_GC_H__ -#include +#include + +MONO_BEGIN_DECLS + +typedef int (*MonoGCReferences) (MonoObject *obj, MonoClass *klass, uintptr_t size, uintptr_t num, MonoObject **refs, uintptr_t *offsets, void *data); void mono_gc_collect (int generation); int mono_gc_max_generation (void); -gint64 mono_gc_get_used_size (void); -gint64 mono_gc_get_heap_size (void); +int mono_gc_get_generation (MonoObject *object); +int mono_gc_collection_count (int generation); +int64_t mono_gc_get_used_size (void); +int64_t mono_gc_get_heap_size (void); +int mono_gc_invoke_finalizers (void); +/* heap walking is only valid in the pre-stop-world event callback */ +int mono_gc_walk_heap (int flags, MonoGCReferences callback, void *data); + +MONO_END_DECLS #endif /* __METADATA_MONO_GC_H__ */