# File lib/puma/server.rb, line 606 def graceful_shutdown if @options[:drain_on_shutdown] count = 0 while true ios = IO.select @binder.ios, nil, nil, 0 break unless ios ios.first.each do |sock| begin if io = sock.accept_nonblock count += 1 c = Client.new io, @binder.env(sock) @thread_pool << c end rescue SystemCallError end end end @events.debug "Drained #{count} additional connections." end @thread_pool.shutdown if @thread_pool end