Method: Main::Daemon#keep_ios
- Defined in:
- lib/main/daemon.rb
#keep_ios(*ios) ⇒ Object
502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 |
# File 'lib/main/daemon.rb', line 502 def keep_ios(*ios) filenos = [] ios.flatten.compact.each do |io| begin fileno = io.respond_to?(:fileno) ? io.fileno : Integer(io) filenos.push(fileno) rescue Object next end end ObjectSpace.each_object(IO) do |io| begin fileno = io.fileno next if filenos.include?(fileno) io.close unless io.closed? rescue Object next end end end |