@@ -133,6 +133,7 @@ def self.ensure_timeout_thread_created
133133 end
134134 end
135135 end
136+ private_class_method :ensure_timeout_thread_created
136137
137138 # We keep a private reference so that time mocking libraries won't break
138139 # Timeout.
@@ -167,7 +168,7 @@ def self.ensure_timeout_thread_created
167168 # Note that this is both a method of module Timeout, so you can <tt>include
168169 # Timeout</tt> into your classes so they have a #timeout method, as well as
169170 # a module method, so you can call it directly as Timeout.timeout().
170- def timeout ( sec , klass = nil , message = nil , &block ) #:yield: +sec+
171+ def self . timeout ( sec , klass = nil , message = nil , &block ) #:yield: +sec+
171172 return yield ( sec ) if sec == nil or sec . zero?
172173 raise ArgumentError , "Timeout sec must be a non-negative number" if 0 > sec
173174
@@ -177,7 +178,7 @@ def timeout(sec, klass = nil, message = nil, &block) #:yield: +sec+
177178 return scheduler . timeout_after ( sec , klass || Error , message , &block )
178179 end
179180
180- Timeout . ensure_timeout_thread_created
181+ ensure_timeout_thread_created
181182 perform = Proc . new do |exc |
182183 request = Request . new ( Thread . current , sec , exc , message )
183184 QUEUE_MUTEX . synchronize do
@@ -197,5 +198,8 @@ def timeout(sec, klass = nil, message = nil, &block) #:yield: +sec+
197198 Error . handle_timeout ( message , &perform )
198199 end
199200 end
200- module_function :timeout
201+
202+ private def timeout ( *args , &block )
203+ Timeout . timeout ( *args , &block )
204+ end
201205end
0 commit comments