in reply to alarm() on windows 2003, overview
Looking at the ActiveState sources, it seems 5.8.3 had the first Win32 implementation of alarm(). Here's the changelog comment -
[ 21901] By: nicholas on 2003/12/13 21:22:15 Log: Integrate: ... [ 21895] alarm() is now implemented on Win32. ...
And from looking inside win32.c it seems that win32_alarm() uses SetTimer.
And yes, the behaviour of SetTimer has changed from Win 2000 to Win 2003
On 2000 if the timeout "is greater than USER_TIMER_MAXIMUM, the timeout is set to 1."
On 2003 SP1 if the timeout "is greater than USER_TIMER_MAXIMUM, the timeout is set to USER_TIMER_MAXIMUM."
That might be your problem, maybe.
In Section
Seekers of Perl Wisdom