On Tue, Jul 15, 2003 at 11:01:13AM -0400, Steve Grazzini wrote:
>     Safe Signals
> 
>     Perl used to be fragile in that signals arriving at inopportune moments
>     could corrupt Perl's internal state.  Now Perl postpones handling of
>     signals until it's safe (between opcodes).
> 
>     This change may have surprising side effects because signals no longer
>     interrupt Perl instantly.  Perl will now first finish whatever it was
>     doing, like finishing an internal operation (like sort()) or an
>     external operation (like an I/O operation), and only then look at any
>     arrived signals (and before starting the next operation).  No more
>     corrupt internal state since the current operation is always finished 
>     first, but the signal may take more time to get heard.  Note that
>     breaking out from potentially blocking operations should still work,
>     though.
> 
> However: I don't think this was supposed to break your script.  It also
> breaks all the server socket examples in perlipc.
> 
> Anybody think this _isn't_ a bug?

Upon further review:

If we read between the lines a little, "breaking out from potentially
blocking operations should still work" can be interpreted as "we aren't
going to be using SA_RESTART with %SIG anymore".

And the Socket.pm examples in perlipc are more robust than the IO::Socket
example you were using...

But still,

Anybody think this isn't a documentation bug?

-- 
Steve

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to