Ruby 2.1.5p273(2014-11-13revision48405)

- Main Page
- Modules
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Data Fields

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
rb_heap_t | eden_heap
rb_heap_t | tomb_heap
struct {
struct heap_page ** sorted
size_t used
size_t length
RVALUE * range [2]
size_t limit
size_t increment
size_t swept_slots
size_t min_free_slots
size_t max_free_slots
size_t final_slots
RVALUE * deferred_final
} | heap_pages
struct {
int dont_gc
int dont_lazy_sweep
int during_gc
rb_atomic_t finalizing
} | flags
st_table * | finalizer_table
mark_stack_t | mark_stack
struct {
int run
gc_profile_record * records
gc_profile_record * current_record
size_t next_index
size_t size
double invoke_time
size_t minor_gc_count
size_t major_gc_count
double gc_sweep_start_time
size_t total_allocated_object_num_at_gc_start
size_t heap_used_at_gc_start
size_t count
size_t total_allocated_object_num
size_t total_freed_object_num
int latest_gc_info
} | profile
struct gc_list * | global_list
rb_event_flag_t | hook_events
VALUE | gc_stress
struct rb_objspace::mark_func_data_struct * | mark_func_data
struct {
int during_minor_gc
int parent_object_is_old
int need_major_gc
size_t last_major_gc
size_t remembered_shady_object_count
size_t remembered_shady_object_limit
size_t old_object_count
size_t old_object_limit
size_t oldmalloc_increase
size_t oldmalloc_increase_limit
} | rgengc

## Detailed Description

Definition at line 417 of file gc.c.

## Field Documentation

size_t rb_objspace::count

Definition at line 502 of file gc.c.

Referenced by garbage_collect_body(), gc_after_sweep(), gc_profile_dump_on(), gc_stat_internal(), and rb_gc_count().

gc_profile_record* rb_objspace::current_record

Definition at line 459 of file gc.c.

Referenced by gc_prof_setup_new_record(), gc_profile_clear(), gc_profile_disable(), and gc_profile_enable().

RVALUE* rb_objspace::deferred_final

Definition at line 445 of file gc.c.

int rb_objspace::dont_gc

Definition at line 449 of file gc.c.

int rb_objspace::dont_lazy_sweep

Definition at line 450 of file gc.c.

Referenced by garbage_collect_body(), heap_prepare_freepage(), and lazy_sweep_enable().

int rb_objspace::during_gc

Definition at line 451 of file gc.c.

int rb_objspace::during_minor_gc

Definition at line 518 of file gc.c.

Referenced by check_gen_consistency(), gc_after_sweep(), gc_before_sweep(), gc_mark_children(), gc_marks_body(), gc_page_sweep(), and rgengc_report_body().

rb_heap_t rb_objspace::eden_heap

Definition at line 427 of file gc.c.

Referenced by rb_objspace_free().

size_t rb_objspace::final_slots

Definition at line 444 of file gc.c.

st_table* rb_objspace::finalizer_table

Definition at line 454 of file gc.c.

rb_atomic_t rb_objspace::finalizing

Definition at line 452 of file gc.c.

struct { ... } rb_objspace::flags

Referenced by garbage_collect_body(), heap_prepare_freepage(), and lazy_sweep_enable().

VALUE rb_objspace::gc_stress

Definition at line 509 of file gc.c.

double rb_objspace::gc_sweep_start_time

Definition at line 497 of file gc.c.

Referenced by gc_prof_sweep_timer_start(), and gc_prof_sweep_timer_stop().

struct gc_list* rb_objspace::global_list

Definition at line 507 of file gc.c.

struct { ... } rb_objspace::heap_pages

size_t rb_objspace::heap_used_at_gc_start

Definition at line 499 of file gc.c.

Referenced by garbage_collect_body(), and gc_prof_set_heap_info().

rb_event_flag_t rb_objspace::hook_events

Definition at line 508 of file gc.c.

Referenced by rb_objspace_set_event_hook().

size_t rb_objspace::increase

Definition at line 420 of file gc.c.

size_t rb_objspace::increment

Definition at line 437 of file gc.c.

double rb_objspace::invoke_time

Definition at line 466 of file gc.c.

Referenced by gc_prof_timer_stop(), and Init_heap().

size_t rb_objspace::last_major_gc

Definition at line 523 of file gc.c.

Referenced by gc_after_sweep().

int rb_objspace::latest_gc_info

Definition at line 505 of file gc.c.

Referenced by garbage_collect_body(), gc_before_sweep(), gc_latest_gc_info(), gc_prof_sweep_timer_stop(), and rb_gc_latest_gc_info().

size_t rb_objspace::length

Definition at line 433 of file gc.c.

size_t rb_objspace::limit

Definition at line 419 of file gc.c.

size_t rb_objspace::major_gc_count

Definition at line 470 of file gc.c.

Referenced by gc_after_sweep(), gc_marks_body(), and gc_stat_internal().

struct { ... } rb_objspace::malloc_params

Referenced by objspace_malloc_increase().

struct rb_objspace::mark_func_data_struct * rb_objspace::mark_func_data

Referenced by gc_mark(), gc_mark_children(), gc_marks(), mark_m_tbl_wrapper(), rb_objspace_reachable_objects_from(), and rb_objspace_reachable_objects_from_root().

mark_stack_t rb_objspace::mark_stack

Definition at line 455 of file gc.c.

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

size_t rb_objspace::max_free_slots

Definition at line 441 of file gc.c.

size_t rb_objspace::min_free_slots

Definition at line 440 of file gc.c.

size_t rb_objspace::minor_gc_count

Definition at line 469 of file gc.c.

Referenced by gc_after_sweep(), gc_marks_body(), and gc_stat_internal().

int rb_objspace::need_major_gc

Definition at line 521 of file gc.c.

Referenced by garbage_collect_body(), gc_after_sweep(), and gc_before_sweep().

size_t rb_objspace::next_index

Definition at line 460 of file gc.c.

Referenced by gc_prof_setup_new_record(), gc_profile_clear(), gc_profile_dump_on(), gc_profile_record_get(), and gc_profile_total_time().

size_t rb_objspace::old_object_count

Definition at line 527 of file gc.c.

Referenced by garbage_collect_body(), gc_mark_children(), gc_marks(), and gc_stat_internal().

size_t rb_objspace::old_object_limit

Definition at line 528 of file gc.c.

Referenced by garbage_collect_body(), gc_marks(), and gc_stat_internal().

size_t rb_objspace::oldmalloc_increase

Definition at line 534 of file gc.c.

Referenced by gc_before_sweep(), gc_stat_internal(), and objspace_malloc_increase().

size_t rb_objspace::oldmalloc_increase_limit

Definition at line 535 of file gc.c.

Referenced by gc_before_sweep(), gc_stat_internal(), Init_heap(), and ruby_gc_set_params().

int rb_objspace::parent_object_is_old

Definition at line 519 of file gc.c.

Referenced by gc_mark_children(), gc_mark_roots(), gc_marks_body(), and rgengc_check_relation().

struct { ... } rb_objspace::profile

Referenced by finalize_list(), garbage_collect(), garbage_collect_body(), gc_after_sweep(), gc_before_sweep(), gc_latest_gc_info(), gc_marks_body(), gc_page_sweep(), gc_prof_set_heap_info(), gc_prof_setup_new_record(), gc_prof_sweep_timer_start(), gc_prof_sweep_timer_stop(), gc_prof_timer_start(), gc_prof_timer_stop(), gc_profile_clear(), gc_profile_disable(), gc_profile_dump_on(), gc_profile_enable(), gc_profile_enable_get(), gc_profile_record_get(), gc_profile_total_time(), gc_stat_internal(), heap_prepare_freepage(), Init_heap(), newobj_of(), objspace_live_slot(), rb_gc_count(), rb_gc_force_recycle(), rb_gc_latest_gc_info(), rb_gc_writebarrier_unprotect_promoted(), rb_objspace_free(), rgengc_remember(), and RVALUE_PROMOTE_INFANT().

RVALUE* rb_objspace::range[2]

Definition at line 434 of file gc.c.

gc_profile_record* rb_objspace::records

Definition at line 458 of file gc.c.

Referenced by gc_prof_setup_new_record(), gc_profile_clear(), gc_profile_dump_on(), gc_profile_record_get(), gc_profile_total_time(), and rb_objspace_free().

size_t rb_objspace::remembered_shady_object_count

Definition at line 525 of file gc.c.

Referenced by garbage_collect_body(), gc_after_sweep(), gc_marks(), gc_stat_internal(), rb_gc_writebarrier_unprotect_promoted(), rgengc_check_relation(), and rgengc_remember().

size_t rb_objspace::remembered_shady_object_limit

Definition at line 526 of file gc.c.

Referenced by garbage_collect_body(), gc_marks(), and gc_stat_internal().

struct { ... } rb_objspace::rgengc

Referenced by check_gen_consistency(), garbage_collect_body(), gc_after_sweep(), gc_before_sweep(), gc_mark_children(), gc_mark_roots(), gc_marks(), gc_marks_body(), gc_page_sweep(), gc_stat_internal(), Init_heap(), objspace_malloc_increase(), rb_gc_writebarrier_unprotect_promoted(), rgengc_check_relation(), rgengc_report_body(), and ruby_gc_set_params().

int rb_objspace::run

Definition at line 457 of file gc.c.

Referenced by gc_prof_setup_new_record(), gc_profile_disable(), gc_profile_dump_on(), gc_profile_enable(), gc_profile_enable_get(), gc_profile_record_get(), and gc_profile_total_time().

size_t rb_objspace::size

Definition at line 461 of file gc.c.

Referenced by gc_prof_setup_new_record(), and gc_profile_clear().

struct heap_page** rb_objspace::sorted

Definition at line 431 of file gc.c.

size_t rb_objspace::swept_slots

Definition at line 439 of file gc.c.

rb_heap_t rb_objspace::tomb_heap

Definition at line 428 of file gc.c.

size_t rb_objspace::total_allocated_object_num

Definition at line 503 of file gc.c.

Referenced by garbage_collect_body(), gc_stat_internal(), newobj_of(), and objspace_live_slot().

size_t rb_objspace::total_allocated_object_num_at_gc_start

Definition at line 498 of file gc.c.

Referenced by garbage_collect_body(), and gc_prof_set_heap_info().

size_t rb_objspace::total_freed_object_num

Definition at line 504 of file gc.c.

Referenced by finalize_list(), gc_page_sweep(), gc_prof_set_heap_info(), gc_stat_internal(), objspace_live_slot(), and rb_gc_force_recycle().

size_t rb_objspace::used

Definition at line 432 of file gc.c.

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

- gc.c