in reply to Re: win32, ctrl-c, sleep, and signals
in thread win32, ctrl-c, sleep, and signals

This is caused by the 'safe signals' that were introduced by 5.8.0.

Fair enough, but that doesn't seem to explain why I get different behavior on Linux (immediate exit), where I'm running Perl 5.8.0.

Thanks,
Ken

"This bounty hunter is my kind of scum: Fearless and inventive." --J.T. Hutt
  • Comment on Re^2: win32, ctrl-c, sleep, and signals

Replies are listed 'Best First'.
Re^3: win32, ctrl-c, sleep, and signals
by BrowserUk (Patriarch) on May 30, 2006 at 17:11 UTC

    You have to remember that Win32 does not have signals as a native concept. Perl's support for them is simulated and limited, and is actually implemented via the process message queue. This is the code that implements the signal emulations from win32.c:

    Setting the environment variable PERL_SIGNALS=unsafe allows ^C to interupt sleep. Without it, the signal handler doesn't get invoked until the sleep is over.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.