Type:
Class
Constants:
TimeoutMutex : Mutex.new # :nodoc:

Mutex used to synchronize access across threads

Class used to manage timeout handlers across multiple threads.

Timeout handlers should be managed by using the class methods which are synchronized.

1
2
3
4
5
6
7
id = TimeoutHandler.register(10, Timeout::Error)
begin
  sleep 20
  puts 'foo'
ensure
  TimeoutHandler.cancel(id)
end

will raise Timeout::Error

1
2
3
4
5
6
7
id = TimeoutHandler.register(10, Timeout::Error)
begin
  sleep 5
  puts 'foo'
ensure
  TimeoutHandler.cancel(id)
end

will print 'foo'

register 2
  • References/Ruby on Rails/Ruby/Classes/WEBrick/WEBrick::Utils/WEBrick::Utils::TimeoutHandler

register(thread, time, exception) Instance Public methods Registers a new timeout

2025-01-10 15:47:30
register
  • References/Ruby on Rails/Ruby/Classes/WEBrick/WEBrick::Utils/WEBrick::Utils::TimeoutHandler

register(seconds, exception) Class Public methods Registers a new timeout handler

2025-01-10 15:47:30
new
  • References/Ruby on Rails/Ruby/Classes/WEBrick/WEBrick::Utils/WEBrick::Utils::TimeoutHandler

new() Class Public methods Creates a new

2025-01-10 15:47:30
cancel 2
  • References/Ruby on Rails/Ruby/Classes/WEBrick/WEBrick::Utils/WEBrick::Utils::TimeoutHandler

cancel(thread, id) Instance Public methods Cancels the timeout handler id

2025-01-10 15:47:30
interrupt
  • References/Ruby on Rails/Ruby/Classes/WEBrick/WEBrick::Utils/WEBrick::Utils::TimeoutHandler

interrupt(thread, id, exception) Instance Public methods Interrupts the timeout

2025-01-10 15:47:30
cancel
  • References/Ruby on Rails/Ruby/Classes/WEBrick/WEBrick::Utils/WEBrick::Utils::TimeoutHandler

cancel(id) Class Public methods Cancels the timeout handler id

2025-01-10 15:47:30