class GetProcessMem::Darwin

Constants

PROC_PIDTASKINFO

Public Class Methods

resident_size(pid) click to toggle source
# File lib/get_process_mem/darwin.rb, line 42
def resident_size(pid)
  get_proc_pidinfo(pid)[:pti_resident_size]
end

Private Class Methods

get_proc_pidinfo(pid) click to toggle source
# File lib/get_process_mem/darwin.rb, line 48
def get_proc_pidinfo(pid)
  data = TaskInfo.new
  result = proc_pidinfo(pid, PROC_PIDTASKINFO, 0, data, TaskInfo.size)
  if result == TaskInfo.size
    data
  else
    raise SystemCallError.new("proc_pidinfo returned #{result}", FFI.errno)
  end
end