ÿØÿà JFIF    ÿÛ „ ( %!1!%*+...983,7(-.- PKL]Klatest_gc_info-c.rinu[U:RDoc::AnyMethod[iI"latest_gc_info:ETI"GC::latest_gc_info;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"BReturns information about the most recent garbage collection.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"tGC.latest_gc_info -> {:gc_by=>:newobj} GC.latest_gc_info(hash) -> hash GC.latest_gc_info(:major_by) -> :malloc ;T0[I"(p1 = v1);T@FI"GC;TcRDoc::NormalModule00PKL]rr cdesc-GC.rinu[U:RDoc::NormalModule[iI"GC:ET@0o:RDoc::Markup::Document: @parts[o;;[ o:RDoc::Markup::Paragraph;[I" Integer ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]Q start-c.rinu[U:RDoc::AnyMethod[iI" start:ETI"GC::start;TT: publico:RDoc::Markup::Document: @parts[ o:RDoc::Markup::Paragraph; [I"def GC.start(full_mark: true, immediate_sweep: true) end ;T: @format0o; ; [I"1Use full_mark: false to perform a minor GC. ;TI"CUse immediate_sweep: false to defer sweeping (use lazy sweep).;T@o; ; [I"RNote: These keyword arguments are implementation and version dependent. They ;TI"Kare not guaranteed to be future-compatible, and may be ignored if the ;TI"5underlying implementation does not support them.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"LGC.start -> nil GC.start(full_mark: false) -> nil;T0[I"(p1 = {});T@FI"GC;TcRDoc::NormalModule00PKL]b!zz stat-c.rinu[U:RDoc::AnyMethod[iI" stat:ETI" GC::stat;TT: publico:RDoc::Markup::Document: @parts[ o:RDoc::Markup::Paragraph; [I"8Returns a Hash containing information about the GC.;To:RDoc::Markup::BlankLineo; ; [I"NThe hash includes information about internal statistics about GC such as:;T@o:RDoc::Markup::Verbatim; [I"{ ;TI" :count=>2, ;TI" :heap_used=>9, ;TI" :heap_length=>11, ;TI" :heap_increment=>2, ;TI" :heap_live_slot=>6836, ;TI" :heap_free_slot=>519, ;TI" :heap_final_slot=>0, ;TI" :heap_swept_slot=>818, ;TI"( :total_allocated_object=>7674, ;TI"# :total_freed_object=>838, ;TI"# :malloc_increase=>181034, ;TI"" :malloc_limit=>16777216, ;TI" :minor_gc_count=>2, ;TI" :major_gc_count=>0, ;TI"' :remembered_shady_object=>55, ;TI", :remembered_shady_object_limit=>0, ;TI" :old_object=>2422, ;TI" :old_object_limit=>0, ;TI"& :oldmalloc_increase=>277386, ;TI"$ :oldmalloc_limit=>16777216 ;TI"} ;T: @format0o; ; [I"PThe contents of the hash are implementation specific and may be changed in ;TI"the future.;T@o; ; [I"4This method is only expected to work on C Ruby.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"DGC.stat -> Hash GC.stat(hash) -> hash GC.stat(:key) -> Numeric ;T0[I"(p1 = v1);T@1FI"GC;TcRDoc::NormalModule00PKL].r enable-c.rinu[U:RDoc::AnyMethod[iI" enable:ETI"GC::enable;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"=Enables garbage collection, returning +true+ if garbage ;TI"(collection was previously disabled.;To:RDoc::Markup::BlankLineo:RDoc::Markup::Verbatim; [I"GC.disable #=> false ;TI"GC.enable #=> true ;TI"GC.enable #=> false;T: @format0: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"#GC.enable -> true or false ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]&garbage_collect-i.rinu[U:RDoc::AnyMethod[iI"garbage_collect:ETI"GC#garbage_collect;TF: publico:RDoc::Markup::Document: @parts[ o:RDoc::Markup::Paragraph; [I"def GC.start(full_mark: true, immediate_sweep: true) end ;T: @format0o; ; [I"1Use full_mark: false to perform a minor GC. ;TI"CUse immediate_sweep: false to defer sweeping (use lazy sweep).;T@o; ; [I"RNote: These keyword arguments are implementation and version dependent. They ;TI"Kare not guaranteed to be future-compatible, and may be ignored if the ;TI"5underlying implementation does not support them.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"LGC.garbage_collect -> nil ObjectSpace.garbage_collect -> nil;T0[I"(p1 = {});T@FI"GC;TcRDoc::NormalModule00PKL]]44stress%3d-c.rinu[U:RDoc::AnyMethod[iI" stress=:ETI"GC::stress=;TT: publico:RDoc::Markup::Document: @parts[ o:RDoc::Markup::Paragraph; [I" Updates the GC stress mode.;To:RDoc::Markup::BlankLineo; ; [I"MWhen stress mode is enabled, the GC is invoked at every GC opportunity: ;TI"'all memory and object allocations.;T@o; ; [I"MEnabling stress mode will degrade performance, it is only for debugging.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"'GC.stress = bool -> bool ;T0[I" (p1);T@FI"GC;TcRDoc::NormalModule00PKL]dϠ count-c.rinu[U:RDoc::AnyMethod[iI" count:ETI"GC::count;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"%The number of times GC occurred.;To:RDoc::Markup::BlankLineo; ; [I"JIt returns the number of times GC occurred since the process started.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"GC.count -> Integer ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]&## verify_internal_consistency-c.rinu[U:RDoc::AnyMethod[iI" verify_internal_consistency:ETI"$GC::verify_internal_consistency;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"!Verify internal consistency.;To:RDoc::Markup::BlankLineo; ; [I"-This method is implementation specific. ;TI"5Now this method checks generatioanl consistency ;TI"if RGenGC is supported.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I" nil ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]jLLProfiler/clear-c.rinu[U:RDoc::AnyMethod[iI" clear:ETI"GC::Profiler::clear;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"!Clears the GC profiler data.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"(GC::Profiler.clear -> nil ;T0[I"();T@FI" Profiler;TcRDoc::NormalModule00PKL]銩Profiler/result-c.rinu[U:RDoc::AnyMethod[iI" result:ETI"GC::Profiler::result;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"+Returns a profile data report such as:;To:RDoc::Markup::BlankLineo:RDoc::Markup::Verbatim; [I"GC 1 invokes. ;TI"}Index Invoke Time(sec) Use Size(byte) Total Size(byte) Total Object GC time(ms) ;TI"| 1 0.012 159240 212940 10647 0.00000000000001530000;T: @format0: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"$GC::Profiler.result -> String ;T0[I"();T@FI" Profiler;TcRDoc::NormalModule00PKL]7'Profiler/cdesc-Profiler.rinu[U:RDoc::NormalModule[iI" Profiler:ETI"GC::Profiler;T0o:RDoc::Markup::Document: @parts[o;;[ o:RDoc::Markup::Paragraph;[I"OThe GC profiler provides access to information on GC runs including time, ;TI""length and object space size.;To:RDoc::Markup::BlankLineo; ;[I" Example:;T@o:RDoc::Markup::Verbatim;[ I"GC::Profiler.enable ;TI" ;TI"require 'rdoc/rdoc' ;TI" ;TI"GC::Profiler.report ;TI" ;TI"GC::Profiler.disable ;T: @format0o; ;[I"JSee also GC.count, GC.malloc_allocated_size and GC.malloc_allocations;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0; 0;0[[[[[I" class;T[[: public[ [I" clear;TI" gc.c;T[I" disable;T@-[I" enable;T@-[I" enabled?;T@-[I" raw_data;T@-[I" report;T@-[I" result;T@-[I"total_time;T@-[:protected[[: private[[I" instance;T[[;[[;[[;[[[U:RDoc::Context::Section[i0o;;[; 0;0[@!I"GC;TcRDoc::NormalModulePKL]؅5*GGProfiler/enable-c.rinu[U:RDoc::AnyMethod[iI" enable:ETI"GC::Profiler::enable;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"Starts the GC profiler.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"&GC::Profiler.enable -> nil ;T0[I"();T@FI" Profiler;TcRDoc::NormalModule00PKL]mProfiler/report-c.rinu[U:RDoc::AnyMethod[iI" report:ETI"GC::Profiler::report;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"OWrites the GC::Profiler.result to $stdout or the given IO object.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"1GC::Profiler.report GC::Profiler.report(io) ;T0[I"(p1 = v1);T@FI" Profiler;TcRDoc::NormalModule00PKL]| ddProfiler/enabled%3f-c.rinu[U:RDoc::AnyMethod[iI" enabled?:ETI"GC::Profiler::enabled?;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"+The current status of GC profile mode.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"0GC::Profiler.enabled? -> true or false ;T0[I"();T@FI" Profiler;TcRDoc::NormalModule00PKL]9HHProfiler/disable-c.rinu[U:RDoc::AnyMethod[iI" disable:ETI"GC::Profiler::disable;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"Stops the GC profiler.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"&GC::Profiler.disable -> nil ;T0[I"();T@FI" Profiler;TcRDoc::NormalModule00PKL]nnProfiler/total_time-c.rinu[U:RDoc::AnyMethod[iI"total_time:ETI"GC::Profiler::total_time;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I":The total time used for garbage collection in seconds;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"'GC::Profiler.total_time -> float ;T0[I"();T@FI" Profiler;TcRDoc::NormalModule00PKL]nProfiler/raw_data-c.rinu[U:RDoc::AnyMethod[iI" raw_data:ETI"GC::Profiler::raw_data;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"DReturns an Array of individual raw profile data Hashes ordered ;TI"2from earliest to latest by +:GC_INVOKE_TIME+.;To:RDoc::Markup::BlankLineo; ; [I"For example:;T@o:RDoc::Markup::Verbatim; [I"[ ;TI" { ;TI", :GC_TIME=>1.3000000000000858e-05, ;TI"1 :GC_INVOKE_TIME=>0.010634999999999999, ;TI"" :HEAP_USE_SIZE=>289640, ;TI"$ :HEAP_TOTAL_SIZE=>588960, ;TI"& :HEAP_TOTAL_OBJECTS=>14724, ;TI" :GC_IS_MARKED=>false ;TI" }, ;TI" # ... ;TI"] ;T: @format0o; ; [I"The keys mean:;T@o:RDoc::Markup::List: @type: NOTE: @items[ o:RDoc::Markup::ListItem: @label[I"+:GC_TIME+;T; [o; ; [I",Time elapsed in seconds for this GC run;To;;[I"+:GC_INVOKE_TIME+;T; [o; ; [I"DTime elapsed in seconds from startup to when the GC was invoked;To;;[I"+:HEAP_USE_SIZE+;T; [o; ; [I"Total bytes of heap used;To;;[I"+:HEAP_TOTAL_SIZE+;T; [o; ; [I" Total size of heap in bytes;To;;[I"+:HEAP_TOTAL_OBJECTS+;T; [o; ; [I"Total number of objects;To;;[I"+:GC_IS_MARKED+;T; [o; ; [I".Returns +true+ if the GC is in mark phase;T@o; ; [I"PIf ruby was built with +GC_PROFILE_MORE_DETAIL+, you will also have access ;TI" to the following hash keys:;T@o;;;;[o;;[ I"+:GC_MARK_TIME+;TI"+:GC_SWEEP_TIME+;TI"+:ALLOCATE_INCREASE+;TI"+:ALLOCATE_LIMIT+;TI"+:HEAP_USE_PAGES+;TI"+:HEAP_LIVE_OBJECTS+;TI"+:HEAP_FREE_OBJECTS+;TI"+:HAVE_FINALIZE+;T; [: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"-GC::Profiler.raw_data -> [Hash, ...] ;T0[I"();T@`FI" Profiler;TcRDoc::NormalModule00PKL]LI disable-c.rinu[U:RDoc::AnyMethod[iI" disable:ETI"GC::disable;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I">Disables garbage collection, returning +true+ if garbage ;TI"%collection was already disabled.;To:RDoc::Markup::BlankLineo:RDoc::Markup::Verbatim; [I"GC.disable #=> false ;TI"GC.disable #=> true;T: @format0: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I"$GC.disable -> true or false ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]?OO stress-c.rinu[U:RDoc::AnyMethod[iI" stress:ETI"GC::stress;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I".Returns current status of GC stress mode.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I",GC.stress -> fixnum, true or false ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]malloc_allocated_size-c.rinu[U:RDoc::AnyMethod[iI"malloc_allocated_size:ETI"GC::malloc_allocated_size;TT: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"6Returns the size of memory allocated by malloc().;To:RDoc::Markup::BlankLineo; ; [I"DOnly available if ruby was built with +CALC_EXACT_MALLOC_SIZE+.;T: @fileI" gc.c;T:0@omit_headings_from_table_of_contents_below0I")GC.malloc_allocated_size -> Integer ;T0[I"();T@FI"GC;TcRDoc::NormalModule00PKL]Klatest_gc_info-c.rinu[PKL]rr cdesc-GC.rinu[PKL]F"malloc_allocations-c.rinu[PKL]Q start-c.rinu[PKL]b!zz  stat-c.rinu[PKL].r menable-c.rinu[PKL]&garbage_collect-i.rinu[PKL]]44stress%3d-c.rinu[PKL]dϠ Fcount-c.rinu[PKL]&##  verify_internal_consistency-c.rinu[PKL]jLLProfiler/clear-c.rinu[PKL]銩"!Profiler/result-c.rinu[PKL]7'$Profiler/cdesc-Profiler.rinu[PKL]؅5*GG"(Profiler/enable-c.rinu[PKL]m)Profiler/report-c.rinu[PKL]| dd}+Profiler/enabled%3f-c.rinu[PKL]9HH)-Profiler/disable-c.rinu[PKL]nn.Profiler/total_time-c.rinu[PKL]nl0Profiler/raw_data-c.rinu[PKL]LI 7disable-c.rinu[PKL]?OO 9stress-c.rinu[PKL]z;malloc_allocated_size-c.rinu[PK=