class TCPClient::Deadline
Constants
- MONOTONIC
Public Class Methods
new(timeout)
click to toggle source
# File lib/tcp-client/deadline.rb, line 7 def initialize(timeout) timeout = timeout&.to_f @deadline = timeout&.positive? ? now + timeout : 0 end
Public Instance Methods
remaining_time()
click to toggle source
# File lib/tcp-client/deadline.rb, line 16 def remaining_time (@deadline != 0) && (remaining = @deadline - now) > 0 ? remaining : nil end
valid?()
click to toggle source
# File lib/tcp-client/deadline.rb, line 12 def valid? @deadline != 0 end
Private Instance Methods
now()
click to toggle source
# File lib/tcp-client/deadline.rb, line 23 def now Process.clock_gettime(Process::CLOCK_MONOTONIC) end