Issue #166 has been reported by Dave Thomas.

----------------------------------------
Bug #166: Signal handling and sleep() don't work together
http://redmine.ruby-lang.org/issues/show/166

Author: Dave Thomas
Status: Open
Priority: Normal
Assigned to: 
Category: 
Target version: 


Setting up a sleep seems to interfere with signal handlers. The following code

 trap("CLD") do
    pid = Process.wait
    puts "Child pid #{pid}: terminated"
 end

 exec("/bin/sh -c 'echo hello'") if fork.nil?
 puts "start"
 sleep 2
 puts "done"

Outputs start/hello/done with no delay, and the trap never fires. Replace the sleep with a gets, and the signal handler gets invoked¡½it never writes ¡ÈChild xxx terminated.¡É


----------------------------------------
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://redmine.ruby-lang.org/my/account