Ruby  2.0.0p648(2015-12-16revision53162)
Data Structures | Data Fields
rb_objspace Struct Reference

Data Structures

struct  mark_func_data_struct
 

Data Fields

struct {
   size_t   limit
 
   size_t   increase
 
malloc_params
 
struct {
   size_t   increment
 
   struct heaps_slot *   ptr
 
   struct heaps_slot *   sweep_slots
 
   struct heaps_slot *   free_slots
 
   struct heaps_header **   sorted
 
   size_t   length
 
   size_t   used
 
   struct heaps_free_bitmap *   free_bitmap
 
   RVALUE *   range [2]
 
   struct heaps_header *   freed
 
   size_t   marked_num
 
   size_t   free_num
 
   size_t   free_min
 
   size_t   final_num
 
   size_t   do_heap_free
 
heap
 
struct {
   int   dont_gc
 
   int   dont_lazy_sweep
 
   int   during_gc
 
   rb_atomic_t   finalizing
 
flags
 
struct {
   st_table *   table
 
   RVALUE *   deferred
 
final
 
mark_stack_t mark_stack
 
struct {
   int   run
 
   gc_profile_record *   record
 
   size_t   count
 
   size_t   size
 
   double   invoke_time
 
profile
 
struct gc_listglobal_list
 
size_t total_allocated_object_num
 
size_t total_freed_object_num
 
int gc_stress
 
struct rb_objspace::mark_func_data_structmark_func_data
 

Detailed Description

Definition at line 208 of file gc.c.

Field Documentation

◆ count

size_t rb_objspace::count

◆ deferred

RVALUE* rb_objspace::deferred

Definition at line 242 of file gc.c.

◆ do_heap_free

size_t rb_objspace::do_heap_free

Definition at line 232 of file gc.c.

Referenced by before_gc_sweep(), and slot_sweep().

◆ dont_gc

int rb_objspace::dont_gc

Definition at line 235 of file gc.c.

◆ dont_lazy_sweep

int rb_objspace::dont_lazy_sweep

Definition at line 236 of file gc.c.

Referenced by gc_prepare_free_objects(), and lazy_sweep_enable().

◆ during_gc

int rb_objspace::during_gc

Definition at line 237 of file gc.c.

◆ final

struct { ... } rb_objspace::final

◆ final_num

size_t rb_objspace::final_num

Definition at line 231 of file gc.c.

Referenced by gc_stat(), run_final(), and slot_sweep().

◆ finalizing

rb_atomic_t rb_objspace::finalizing

Definition at line 238 of file gc.c.

◆ flags

struct { ... } rb_objspace::flags

◆ free_bitmap

struct heaps_free_bitmap* rb_objspace::free_bitmap

Definition at line 225 of file gc.c.

Referenced by allocate_sorted_heaps(), assign_heap_slot(), free_unused_heaps(), and rb_objspace_free().

◆ free_min

size_t rb_objspace::free_min

Definition at line 230 of file gc.c.

Referenced by after_gc_sweep(), before_gc_sweep(), and gc_prepare_free_objects().

◆ free_num

size_t rb_objspace::free_num

◆ free_slots

struct heaps_slot* rb_objspace::free_slots

Definition at line 221 of file gc.c.

Referenced by before_gc_sweep(), link_free_heap_slot(), newobj(), and unlink_free_heap_slot().

◆ freed

struct heaps_header* rb_objspace::freed

Definition at line 227 of file gc.c.

◆ gc_stress

int rb_objspace::gc_stress

Definition at line 256 of file gc.c.

◆ global_list

struct gc_list* rb_objspace::global_list

Definition at line 252 of file gc.c.

◆ heap

struct { ... } rb_objspace::heap

◆ increase

size_t rb_objspace::increase

Definition at line 211 of file gc.c.

◆ increment

size_t rb_objspace::increment

Definition at line 218 of file gc.c.

Referenced by gc_stat().

◆ invoke_time

double rb_objspace::invoke_time

Definition at line 250 of file gc.c.

Referenced by gc_prof_timer_start(), and init_heap().

◆ length

size_t rb_objspace::length

Definition at line 223 of file gc.c.

Referenced by gc_stat().

◆ limit

size_t rb_objspace::limit

Definition at line 210 of file gc.c.

◆ malloc_params

struct { ... } rb_objspace::malloc_params

◆ mark_func_data

struct rb_objspace::mark_func_data_struct * rb_objspace::mark_func_data

◆ mark_stack

mark_stack_t rb_objspace::mark_stack

Definition at line 244 of file gc.c.

Referenced by gc_mark(), gc_mark_stacked_objects(), init_heap(), and rb_objspace_free().

◆ marked_num

size_t rb_objspace::marked_num

Definition at line 228 of file gc.c.

Referenced by after_gc_sweep(), gc_mark_ptr(), gc_marks(), and gc_prepare_free_objects().

◆ profile

struct { ... } rb_objspace::profile

◆ ptr

struct heaps_slot* rb_objspace::ptr

Definition at line 219 of file gc.c.

Referenced by rb_thread_mark(), thread_free(), thread_memsize(), and vm_memsize().

◆ range

RVALUE* rb_objspace::range[2]

Definition at line 226 of file gc.c.

◆ record

gc_profile_record* rb_objspace::record

◆ run

int rb_objspace::run

◆ size

size_t rb_objspace::size

Definition at line 249 of file gc.c.

Referenced by gc_prof_timer_start(), and gc_profile_clear().

◆ sorted

struct heaps_header** rb_objspace::sorted

◆ sweep_slots

struct heaps_slot* rb_objspace::sweep_slots

◆ table

st_table* rb_objspace::table

Definition at line 241 of file gc.c.

◆ total_allocated_object_num

size_t rb_objspace::total_allocated_object_num

Definition at line 254 of file gc.c.

Referenced by gc_stat(), newobj(), and objspace_live_num().

◆ total_freed_object_num

size_t rb_objspace::total_freed_object_num

Definition at line 255 of file gc.c.

Referenced by finalize_list(), gc_stat(), objspace_live_num(), rb_gc_force_recycle(), and slot_sweep().

◆ used

size_t rb_objspace::used

Definition at line 224 of file gc.c.

Referenced by gc_stat().


The documentation for this struct was generated from the following file: