in reply to Complete mess with IO::Socket in ActivePerl 5.8.8.817
UDP sockets don't block. It seems Win32 (or at least the perl you are using on Win32) doesn't, therefore, allow setting that attribute. Also, I tried your code and tried to use fcntl to check the blocking status of the socket. It seems that ActiveState has not defined the O_NONBLOCK value, at least not in 5.8.1.
Re^2: Complete mess with IO::Socket in ActivePerl 5.8.8.817
by polettix (Vicar) on Jul 06, 2006 at 08:29 UTC
|
UDP sockets don't block.
It actually seems that they don't nonblock in Win32, don't they? :) Thank you for the time and effort traveler.
Flavio
perl -ple'$_=reverse' <<<ti.xittelop@oivalf
Don't fool yourself.
| [reply] [d/l] |
|
You are right. The default behavior in Windows is to block. However, it appears that this is not really a block for 16-bit apps as the message loop stays running, so the code can be re-entered somewhere else. However 32-bit apps hang the UI... Pretty interesting.
| [reply] |
|