Method Debug.gc_status()
- Method gc_status
mapping(string:int|float) gc_status()
- Description
Get statistics from the garbage collector.
- Returns
A mapping with the following content will be returned:
"num_objects" : int Number of arrays, mappings, multisets, objects and programs.
"num_allocs" : int Number of memory allocations since the last gc run.
"alloc_threshold" : int Threshold for "num_allocs" when another automatic gc run is scheduled.
"projected_garbage" : float Estimation of the current amount of garbage.
"objects_alloced" : int Decaying average over the number of allocated objects between gc runs.
"objects_freed" : int Decaying average over the number of freed objects in each gc run.
"last_garbage_ratio" : float Garbage ratio in the last gc run.
"non_gc_time" : int Decaying average over the interval between gc runs, measured in real time nanoseconds.
"gc_time" : int Decaying average over the length of the gc runs, measured in real time nanoseconds.
"last_garbage_strategy" : string The garbage accumulation goal that the gc aimed for when setting "alloc_threshold" in the last run. The value is either "garbage_ratio_low", "garbage_ratio_high" or "garbage_max_interval". The first two correspond to the gc parameters with the same names in Pike.gc_parameters, and the last is the minimum gc time limit specified through the "min_gc_time_ratio" parameter to Pike.gc_parameters.
"last_gc" : int Time when the garbage-collector last ran.
"total_gc_cpu_time" : int The total amount of CPU time that has been consumed in implicit GC runs, in nanoseconds. 0 on systems where Pike lacks support for CPU time measurement.
"total_gc_real_time" : int The total amount of real time that has been spent in implicit GC runs, in nanoseconds.
- See also