in reply to Need a reliable way to send SIGINT to a perl process on 5.8.8/windows XPpro

If you can modify the child process, does using Perl::Unsafe::Signals clear up the issue? If so, it's the change in when Perl checks for signals that's tripping you.

  • Comment on Re: Need a reliable way to send SIGINT to a perl process on 5.8.8/windows XPpro

Replies are listed 'Best First'.
Re^2: Need a reliable way to send SIGINT to a perl process on 5.8.8/windows XPpro
by fwashbur (Sexton) on Mar 09, 2007 at 00:21 UTC
    So I see the change in when Perl checks for signals that was made on 5.8.8 when I do CTRL-C manually, but manually it still works.
    I'll have a look at Perl::Unsafe::Signals.
    Thanks
Re^2: Need a reliable way to send SIGINT to a perl process on 5.8.8/windows XPpro
by fwashbur (Sexton) on Mar 09, 2007 at 00:39 UTC
    So I tried setting $ENV{PERL_SIGNALS} = "unsafe"; and saw no change. It doesn't seem to be a timing issue as far as I can tell, it appears that the signal never makes it to the process in the first place.

      I believe you have to set it before you start Perl, but I'm not positive. However, if Perl isn't performing a single long-running operation, but the signal never arrives, this isn't the solution. I don't know anything about signal handling on Windows.

        Definitely not doing a long running operation, a short sleep in a while, so the signal should be able to get through the opcodes in the while. Windows signal handling is just bad I guess.