U:RDoc::NormalClass[iI"TimeoutHandler:ETI"#WEBrick::Utils::TimeoutHandler;TI" Object;To:RDoc::Markup::Document: @parts[o;;[o:RDoc::Markup::Paragraph;[I"CClass used to manage timeout handlers across multiple threads.;To:RDoc::Markup::BlankLineo; ;[I"MTimeout handlers should be managed by using the class methods which are ;TI"synchronized.;T@o:RDoc::Markup::Verbatim;[ I"6id = TimeoutHandler.register(10, Timeout::Error) ;TI" begin ;TI" sleep 20 ;TI" puts 'foo' ;TI" ensure ;TI"! TimeoutHandler.cancel(id) ;TI" end ;T: @format0o; ;[I"will raise Timeout::Error;T@o; ;[ I"6id = TimeoutHandler.register(10, Timeout::Error) ;TI" begin ;TI" sleep 5 ;TI" puts 'foo' ;TI" ensure ;TI"! TimeoutHandler.cancel(id) ;TI" end ;T; 0o; ;[I"will print 'foo';T: @fileI"lib/webrick/utils.rb;T:0@omit_headings_from_table_of_contents_below0; 0;0[[[[I"Singleton;To;;[; @.;0I"lib/webrick/utils.rb;T[[I" class;T[[: public[ [I" cancel;F@6[I"new;T@6[I" register;F@6[I"terminate;F@6[:protected[[: private[[I" instance;T[[;[[;[[;[[[U:RDoc::Context::Section[i0o;;[; 0;0[@.I"WEBrick::Utils;TcRDoc::NormalModule