Module: WifiWand::Timing

Class Method Summary collapse

Class Method Details

.monotonic_nowObject



15
16
17
# File 'lib/wifi_wand/timing.rb', line 15

def monotonic_now
  Process.clock_gettime(Process::CLOCK_MONOTONIC)
end

.status_deadline(timeout_in_secs) ⇒ Object



5
6
7
# File 'lib/wifi_wand/timing.rb', line 5

def status_deadline(timeout_in_secs)
  monotonic_now + timeout_in_secs if timeout_in_secs
end

.status_timeout_for(deadline) ⇒ Object



9
10
11
12
13
# File 'lib/wifi_wand/timing.rb', line 9

def status_timeout_for(deadline)
  return nil unless deadline

  [deadline - monotonic_now, 0].max
end