Module: Upfluence::Timeout
- Defined in:
- lib/upfluence/timeout.rb
Class Method Summary collapse
Class Method Details
.timeout(sec, klass = nil, message = nil, &block) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/upfluence/timeout.rb', line 8 def self.timeout(sec, klass = nil, = nil, &block) effective = [sec, Upfluence.context.timeout].compact.min raise(klass || ::Timeout::Error, ) if effective <= 0 Upfluence.context.with_timeout(effective) do ::Timeout.timeout(effective, klass, , &block) end end |