Sha256: 0c211d5b13e512f383b7530f6b32e9fef34f207b67ce7c23e968fafec2bdf872
Contents?: true
Size: 798 Bytes
Versions: 28
Compression:
Stored size: 798 Bytes
Contents
begin require 'win32ole' rescue LoadError end module Spider module Memory def self.get_memory_usage if defined? WIN32OLE wmi = WIN32OLE.connect("winmgmts:root/cimv2") mem = 0 query = "select * from Win32_Process where ProcessID = #{$$}" wmi.ExecQuery(query).each do |wproc| mem = wproc.WorkingSetSize end mem.to_i / 1000 elsif proc_file = File.new("/proc/#{$$}/smaps") rescue nil proc_file.map do |line| size = line[/Size: *(\d+)/, 1] and size.to_i end.compact.inject(0){ |s, v| s += v } else `ps -o vsz= -p #{$$}`.to_i end end end end
Version data entries
28 entries across 28 versions & 1 rubygems