Class: Puma::ThreadPool::Automaton
- Inherits:
-
Object
- Object
- Puma::ThreadPool::Automaton
- Defined in:
- lib/puma/thread_pool.rb
Instance Method Summary collapse
-
#initialize(pool, timeout, thread_name, message) ⇒ Automaton
constructor
A new instance of Automaton.
- #start! ⇒ Object
- #stop ⇒ Object
Constructor Details
#initialize(pool, timeout, thread_name, message) ⇒ Automaton
Returns a new instance of Automaton.
334 335 336 337 338 339 340 |
# File 'lib/puma/thread_pool.rb', line 334 def initialize(pool, timeout, thread_name, ) @pool = pool @timeout = timeout @thread_name = thread_name @message = @running = false end |
Instance Method Details
#start! ⇒ Object
342 343 344 345 346 347 348 349 350 351 352 |
# File 'lib/puma/thread_pool.rb', line 342 def start! @running = true @thread = Thread.new do Puma.set_thread_name @thread_name while @running @pool.public_send(@message) sleep @timeout end end end |
#stop ⇒ Object
354 355 356 357 |
# File 'lib/puma/thread_pool.rb', line 354 def stop @running = false @thread.wakeup end |