Method: Concurrent::Promises::ResolvableEvent#wait

Defined in:
lib/concurrent-ruby/concurrent/promises.rb

#wait(timeout = nil, resolve_on_timeout = false) ⇒ self, ...

Behaves as AbstractEventFuture#wait but has one additional optional argument resolve_on_timeout.

Parameters:

  • resolve_on_timeout (true, false) (defaults to: false)

    If it times out and the argument is true it will also resolve the event.

Returns:

  • (self, true, false)

See Also:



1342
1343
1344
1345
1346
1347
1348
1349
1350
# File 'lib/concurrent-ruby/concurrent/promises.rb', line 1342

def wait(timeout = nil, resolve_on_timeout = false)
  super(timeout) or if resolve_on_timeout
                      # if it fails to resolve it was resolved in the meantime
                      # so return true as if there was no timeout
                      !resolve(false)
                    else
                      false
                    end
end