- Inheritance
 
The GC module provides an interface to Ruby‘s mark and sweep garbage collection mechanism. Some of the underlying methods are also available via the ObjectSpace module.
Methods
Class
| Visibility | Signature | 
|---|---|
| public | disable () | 
| public | enable () | 
| public | start () | 
| public | stress () | 
| public | stress= (p1) | 
Instance
| Visibility | Signature | 
|---|---|
| public | garbage_collect () | 
Class Method Detail
        
          GC.disable    => true or false
        
      
      Disables garbage collection, returning true if garbage collection was already disabled.
GC.disable #=> false GC.disable #=> true
        
          GC.enable    => true or false
        
      
      Enables garbage collection, returning true if garbage collection was previously disabled.
GC.disable #=> false GC.enable #=> true GC.enable #=> false
        
          GC.start                     => nil
gc.garbage_collect           => nil
ObjectSpace.garbage_collect  => nil
        
      
      Initiates garbage collection, unless manually disabled.
        
          GC.stress                 => true or false
        
      
      
    
            
        
          GC.stress = bool          => bool
        
      
      When GC.stress = true, GC is invoked for all GC opportunity: all memory and object allocation.
Since it makes Ruby very slow, it is only for debugging.
Instance Method Detail
        
          GC.start                     => nil
gc.garbage_collect           => nil
ObjectSpace.garbage_collect  => nil
        
      
      Initiates garbage collection, unless manually disabled.