class Memory::Leak::Cluster
def check!(&block)
Check all processes in the cluster for memory leaks.
def check!(&block) return to_enum(__method__) unless block_given? self.sample! leaking = [] @processes.each do |process_id, monitor| if monitor.leaking? Console.debug(self, "Memory Leak Detected!", process_id: process_id, monitor: monitor) leaking << [process_id, monitor] end end leaking.each(&block) # Finally, apply any per-cluster memory limits: apply_limit!(@total_size_limit, &block) if @total_size_limit end