class Eye::SystemResources::Cache
Attributes
expire[R]
Public Class Methods
new()
click to toggle source
# File lib/eye/system_resources.rb, line 61 def initialize clear setup_expire end
Public Instance Methods
children(pid)
click to toggle source
# File lib/eye/system_resources.rb, line 90 def children(pid) if pid @ppids[pid] ||= Eye::Sigar.proc_list("State.Ppid.eq=#{pid}") else [] end end
clear()
click to toggle source
# File lib/eye/system_resources.rb, line 72 def clear @memory = {} @cpu = {} @ppids = {} end
proc_cpu(pid)
click to toggle source
# File lib/eye/system_resources.rb, line 84 def proc_cpu(pid) @cpu[pid] ||= Eye::Sigar.proc_cpu(pid) if pid rescue ArgumentError # when incorrect PID end
proc_mem(pid)
click to toggle source
# File lib/eye/system_resources.rb, line 78 def proc_mem(pid) @memory[pid] ||= Eye::Sigar.proc_mem(pid) if pid rescue ArgumentError # when incorrect PID end
setup_expire(expire = 5)
click to toggle source
# File lib/eye/system_resources.rb, line 66 def setup_expire(expire = 5) @expire = expire @timer.cancel if @timer @timer = every(@expire) { clear } end