Class: Eye::SystemResources::Cache
- Includes:
- Celluloid
- Defined in:
- lib/eye/system_resources.rb
Instance Attribute Summary collapse
-
#expire ⇒ Object
readonly
Returns the value of attribute expire.
Instance Method Summary collapse
- #children(pid) ⇒ Object
- #clear ⇒ Object
-
#initialize ⇒ Cache
constructor
A new instance of Cache.
- #proc_cpu(pid) ⇒ Object
- #proc_mem(pid) ⇒ Object
- #setup_expire(expire = 5) ⇒ Object
Constructor Details
#initialize ⇒ Cache
Returns a new instance of Cache.
83 84 85 86 |
# File 'lib/eye/system_resources.rb', line 83 def initialize clear setup_expire end |
Instance Attribute Details
#expire ⇒ Object (readonly)
Returns the value of attribute expire.
81 82 83 |
# File 'lib/eye/system_resources.rb', line 81 def expire @expire end |
Instance Method Details
#children(pid) ⇒ Object
114 115 116 117 118 119 120 |
# File 'lib/eye/system_resources.rb', line 114 def children(pid) if pid @ppids[pid] ||= Eye::Sigar.proc_list("State.Ppid.eq=#{pid}") else [] end end |
#clear ⇒ Object
94 95 96 97 98 |
# File 'lib/eye/system_resources.rb', line 94 def clear @memory = {} @cpu = {} @ppids = {} end |
#proc_cpu(pid) ⇒ Object
107 108 109 110 111 112 |
# File 'lib/eye/system_resources.rb', line 107 def proc_cpu(pid) @cpu[pid] ||= Eye::Sigar.proc_cpu(pid) if pid rescue ArgumentError # when incorrect PID, just skip end |
#proc_mem(pid) ⇒ Object
100 101 102 103 104 105 |
# File 'lib/eye/system_resources.rb', line 100 def proc_mem(pid) @memory[pid] ||= Eye::Sigar.proc_mem(pid) if pid rescue ArgumentError # when incorrect PID, just skip end |
#setup_expire(expire = 5) ⇒ Object
88 89 90 91 92 |
# File 'lib/eye/system_resources.rb', line 88 def setup_expire(expire = 5) @expire = expire @timer.cancel if @timer @timer = every(@expire) { clear } end |