v2_1_10 - Show latest stable - 0 notes - Class: Process
clock_getres(p1, p2 = v2) public

Returns the time resolution returned by POSIX clock_getres() function.

clock_id specifies a kind of clock. See the document of Process.clock_gettime for details.

clock_id can be a symbol as Process.clock_gettime. However the result may not be accurate. For example, +Process.clock_getres(:GETTIMEOFDAY_BASED_CLOCK_REALTIME)+ returns 1.0e-06 which means 1 microsecond, but actual resolution can be more coarse.

If the given clock_id is not supported, Errno::EINVAL is raised.

unit specifies a type of the return value. Process.clock_getres accepts unit as Process.clock_gettime. The default value, :float_second, is also same as Process.clock_gettime.

Process.clock_getres also accepts :hertz as unit. :hertz means a the reciprocal of :float_second.

:hertz can be used to obtain the exact value of the clock ticks per second for times() function and CLOCKS_PER_SEC for clock() function.

+Process.clock_getres(:TIMES_BASED_CLOCK_PROCESS_CPUTIME_ID, :hertz)+ returns the clock ticks per second.

+Process.clock_getres(:CLOCK_BASED_CLOCK_PROCESS_CPUTIME_ID, :hertz)+ returns CLOCKS_PER_SEC.

p Process.clock_getres(Process::CLOCK_MONOTONIC)
#=> 1.0e-09
Show source
Register or log in to add new notes.