C:\usr\local\share\PassThru\perl>perl -wMstrict -e "sub p { local $, = qq{: }; print $], scalar(localtime), @_ }; alarm 2; $SIG{ALRM}=sub{p qq{Timeout reached\n} }; p qq{before I hit enter\n}; <>; p qq{after I hit enter\n}"
5.026002: Fri Jul 20 12:20:40 2018: before I hit enter
never saw the timeout, so hit enter
5.026002: Fri Jul 20 12:20:57 2018: after I hit enter
C:\usr\local\share\PassThru\perl>perl -wMstrict -e "sub p { local $, = qq{: }; print $], scalar(localtime), @_ }; alarm 2; $SIG{ALRM}=sub{p qq{Timeout reached } }; p qq{before I hit enter\n}; <>; p qq{after I hit enter\n}"
5.026002: Fri Jul 20 12:21:05 2018: before I hit enter
never saw the timeout, so hit enter
5.026002: Fri Jul 20 12:21:21 2018: after I hit enter
####
pryrt@pryrtdebian:~$ perl -wMstrict -e 'sub p { local $, = qq{: }; print $], scalar(localtime), @_ }; alarm 2; $SIG{ALRM}=sub{p qq{Timeout reached\n} }; p qq{before I hit enter\n}; <>; p qq{after I hit enter\n}'
5.020003: Fri Jul 20 12:23:50 2018: before I hit enter
5.020003: Fri Jul 20 12:23:52 2018: Timeout reached
after two seconds, that popped up, then I typed this slowly, with ENTER
5.020003: Fri Jul 20 12:24:12 2018: after I hit enter
pryrt@pryrtdebian:~$ perl -wMstrict -e 'sub p { local $, = qq{: }; print $], scalar(localtime), @_ }; alarm 2; $SIG{ALRM}=sub{p qq{Timeout reached } }; p qq{before I hit enter\n}; <>; p qq{after I hit enter\n}'
5.020003: Fri Jul 20 12:24:22 2018: before I hit enter
counted to about 15, never saw timeout, typed this, hit ENTER
5.020003: Fri Jul 20 12:24:24 2018: Timeout reached 5.020003: Fri Jul 20 12:24:57 2018: after I hit enter
####
__WINDOWS__
C:\usr\local\share\PassThru\perl>perl -wMstrict -le "$a=time;$SIG{ALRM}=sub{$b=time};alarm 2;<>;print $b-$a"
Use of uninitialized value $b in subtraction (-) at -e line 1, <> line 1.
-1532115378
__LINUX__
pryrt@pryrtdebian:~$ perl -wMstrict -le '$a=time;$SIG{ALRM}=sub{$b=time};alarm 2;<>;print $b-$a'
2
####
__WINDOWS__
C:\usr\local\share\PassThru\perl>perl -wMstrict -le "$a=time;$SIG{ALRM}=sub{$b=time};alarm 2;<>;print $b-$a;sleep 5; print $b-$a"
Use of uninitialized value $b in subtraction (-) at -e line 1, <> line 1.
-1532115756
10
####
__LINUX__
peter@peterjonesdebian:~$ perl -wMstrict -le '$a=time;$SIG{ALRM}=sub{$b=time};alarm 2;<>;print $b-$a;sleep 5;print $b-$a'
2
2