Method: LinuxStat::Sysinfo.loads

Defined in:
ext/sysinfo/sysinfo.c

.loadsObject



97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# File 'ext/sysinfo/sysinfo.c', line 97

static VALUE loads(volatile VALUE obj) {
  char status = sysinfo(&info) ;
  if(status < 0) return rb_ary_new() ;

  long double load = 1.f / (1 << SI_LOAD_SHIFT) ;

  float l_1 = info.loads[0] * load ;
  float l_5 = info.loads[1] * load ;
  float l_15 = info.loads[2] * load ;

  return rb_ary_new_from_args(3,
    rb_float_new(l_1),
    rb_float_new(l_5),
    rb_float_new(l_15)
  ) ;
}