1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

fix line break code (fix to LF)

This commit is contained in:
Koichi Sasada 2019-11-08 15:32:01 +09:00
parent 054cb6d389
commit 0b29662606

338
gc.rb
View file

@ -1,169 +1,169 @@
# for gc.c # for gc.c
# The GC module provides an interface to Ruby's mark and # The GC module provides an interface to Ruby's mark and
# sweep garbage collection mechanism. # sweep garbage collection mechanism.
# #
# Some of the underlying methods are also available via the ObjectSpace # Some of the underlying methods are also available via the ObjectSpace
# module. # module.
# #
# You may obtain information about the operation of the GC through # You may obtain information about the operation of the GC through
# GC::Profiler. # GC::Profiler.
module GC module GC
# call-seq: # call-seq:
# GC.start -> nil # GC.start -> nil
# ObjectSpace.garbage_collect -> nil # ObjectSpace.garbage_collect -> nil
# include GC; garbage_collect -> nil # include GC; garbage_collect -> nil
# GC.start(full_mark: true, immediate_sweep: true) -> nil # GC.start(full_mark: true, immediate_sweep: true) -> nil
# ObjectSpace.garbage_collect(full_mark: true, immediate_sweep: true) -> nil # ObjectSpace.garbage_collect(full_mark: true, immediate_sweep: true) -> nil
# include GC; garbage_collect(full_mark: true, immediate_sweep: true) -> nil # include GC; garbage_collect(full_mark: true, immediate_sweep: true) -> nil
# #
# Initiates garbage collection, even if manually disabled. # Initiates garbage collection, even if manually disabled.
# #
# This method is defined with keyword arguments that default to true: # This method is defined with keyword arguments that default to true:
# #
# def GC.start(full_mark: true, immediate_sweep: true); end # def GC.start(full_mark: true, immediate_sweep: true); end
# #
# Use full_mark: false to perform a minor GC. # Use full_mark: false to perform a minor GC.
# Use immediate_sweep: false to defer sweeping (use lazy sweep). # Use immediate_sweep: false to defer sweeping (use lazy sweep).
# #
# Note: These keyword arguments are implementation and version dependent. They # Note: These keyword arguments are implementation and version dependent. They
# are not guaranteed to be future-compatible, and may be ignored if the # are not guaranteed to be future-compatible, and may be ignored if the
# underlying implementation does not support them. # underlying implementation does not support them.
def self.start full_mark: true, immediate_mark: true, immediate_sweep: true def self.start full_mark: true, immediate_mark: true, immediate_sweep: true
__builtin_gc_start_internal full_mark, immediate_mark, immediate_sweep __builtin_gc_start_internal full_mark, immediate_mark, immediate_sweep
end end
def garbage_collect full_mark: true, immediate_mark: true, immediate_sweep: true def garbage_collect full_mark: true, immediate_mark: true, immediate_sweep: true
__builtin_gc_start_internal full_mark, immediate_mark, immediate_sweep __builtin_gc_start_internal full_mark, immediate_mark, immediate_sweep
end end
# call-seq: # call-seq:
# GC.enable -> true or false # GC.enable -> true or false
# #
# Enables garbage collection, returning +true+ if garbage # Enables garbage collection, returning +true+ if garbage
# collection was previously disabled. # collection was previously disabled.
# #
# GC.disable #=> false # GC.disable #=> false
# GC.enable #=> true # GC.enable #=> true
# GC.enable #=> false # GC.enable #=> false
# #
def self.enable def self.enable
__builtin_gc_enable __builtin_gc_enable
end end
# call-seq: # call-seq:
# GC.disable -> true or false # GC.disable -> true or false
# #
# Disables garbage collection, returning +true+ if garbage # Disables garbage collection, returning +true+ if garbage
# collection was already disabled. # collection was already disabled.
# #
# GC.disable #=> false # GC.disable #=> false
# GC.disable #=> true # GC.disable #=> true
def self.disable def self.disable
__builtin_gc_disable __builtin_gc_disable
end end
# call-seq: # call-seq:
# GC.stress -> integer, true or false # GC.stress -> integer, true or false
# #
# Returns current status of GC stress mode. # Returns current status of GC stress mode.
def self.stress def self.stress
__builtin_gc_stress_get __builtin_gc_stress_get
end end
# call-seq: # call-seq:
# GC.stress = flag -> flag # GC.stress = flag -> flag
# #
# Updates the GC stress mode. # Updates the GC stress mode.
# #
# When stress mode is enabled, the GC is invoked at every GC opportunity: # When stress mode is enabled, the GC is invoked at every GC opportunity:
# all memory and object allocations. # all memory and object allocations.
# #
# Enabling stress mode will degrade performance, it is only for debugging. # Enabling stress mode will degrade performance, it is only for debugging.
# #
# flag can be true, false, or an integer bit-ORed following flags. # flag can be true, false, or an integer bit-ORed following flags.
# 0x01:: no major GC # 0x01:: no major GC
# 0x02:: no immediate sweep # 0x02:: no immediate sweep
# 0x04:: full mark after malloc/calloc/realloc # 0x04:: full mark after malloc/calloc/realloc
def self.stress=(flag) def self.stress=(flag)
__builtin_gc_stress_set_m flag __builtin_gc_stress_set_m flag
end end
# call-seq: # call-seq:
# GC.count -> Integer # GC.count -> Integer
# #
# The number of times GC occurred. # The number of times GC occurred.
# #
# It returns the number of times GC occurred since the process started. # It returns the number of times GC occurred since the process started.
def self.count def self.count
__builtin_gc_count __builtin_gc_count
end end
# call-seq: # call-seq:
# GC.stat -> Hash # GC.stat -> Hash
# GC.stat(hash) -> hash # GC.stat(hash) -> hash
# GC.stat(:key) -> Numeric # GC.stat(:key) -> Numeric
# #
# Returns a Hash containing information about the GC. # Returns a Hash containing information about the GC.
# #
# The hash includes information about internal statistics about GC such as: # The hash includes information about internal statistics about GC such as:
# #
# { # {
# :count=>0, # :count=>0,
# :heap_allocated_pages=>24, # :heap_allocated_pages=>24,
# :heap_sorted_length=>24, # :heap_sorted_length=>24,
# :heap_allocatable_pages=>0, # :heap_allocatable_pages=>0,
# :heap_available_slots=>9783, # :heap_available_slots=>9783,
# :heap_live_slots=>7713, # :heap_live_slots=>7713,
# :heap_free_slots=>2070, # :heap_free_slots=>2070,
# :heap_final_slots=>0, # :heap_final_slots=>0,
# :heap_marked_slots=>0, # :heap_marked_slots=>0,
# :heap_eden_pages=>24, # :heap_eden_pages=>24,
# :heap_tomb_pages=>0, # :heap_tomb_pages=>0,
# :total_allocated_pages=>24, # :total_allocated_pages=>24,
# :total_freed_pages=>0, # :total_freed_pages=>0,
# :total_allocated_objects=>7796, # :total_allocated_objects=>7796,
# :total_freed_objects=>83, # :total_freed_objects=>83,
# :malloc_increase_bytes=>2389312, # :malloc_increase_bytes=>2389312,
# :malloc_increase_bytes_limit=>16777216, # :malloc_increase_bytes_limit=>16777216,
# :minor_gc_count=>0, # :minor_gc_count=>0,
# :major_gc_count=>0, # :major_gc_count=>0,
# :remembered_wb_unprotected_objects=>0, # :remembered_wb_unprotected_objects=>0,
# :remembered_wb_unprotected_objects_limit=>0, # :remembered_wb_unprotected_objects_limit=>0,
# :old_objects=>0, # :old_objects=>0,
# :old_objects_limit=>0, # :old_objects_limit=>0,
# :oldmalloc_increase_bytes=>2389760, # :oldmalloc_increase_bytes=>2389760,
# :oldmalloc_increase_bytes_limit=>16777216 # :oldmalloc_increase_bytes_limit=>16777216
# } # }
# #
# The contents of the hash are implementation specific and may be changed in # The contents of the hash are implementation specific and may be changed in
# the future. # the future.
# #
# This method is only expected to work on C Ruby. # This method is only expected to work on C Ruby.
def self.stat hash_or_key = nil def self.stat hash_or_key = nil
__builtin_gc_stat hash_or_key __builtin_gc_stat hash_or_key
end end
# call-seq: # call-seq:
# GC.latest_gc_info -> {:gc_by=>:newobj} # GC.latest_gc_info -> {:gc_by=>:newobj}
# GC.latest_gc_info(hash) -> hash # GC.latest_gc_info(hash) -> hash
# GC.latest_gc_info(:major_by) -> :malloc # GC.latest_gc_info(:major_by) -> :malloc
# #
# Returns information about the most recent garbage collection. # Returns information about the most recent garbage collection.
def self.latest_gc_info hash_or_key = nil def self.latest_gc_info hash_or_key = nil
__builtin_gc_latest_gc_info hash_or_key __builtin_gc_latest_gc_info hash_or_key
end end
def self.compact def self.compact
__builtin_rb_gc_compact __builtin_rb_gc_compact
end end
end end
module ObjectSpace module ObjectSpace
def garbage_collect full_mark: true, immediate_mark: true, immediate_sweep: true def garbage_collect full_mark: true, immediate_mark: true, immediate_sweep: true
__builtin_gc_start_internal full_mark, immediate_mark, immediate_sweep __builtin_gc_start_internal full_mark, immediate_mark, immediate_sweep
end end
module_function :garbage_collect module_function :garbage_collect
end end