X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=torrus%2Fsetup_tools%2Fcheck_perlthreading.pl;fp=torrus%2Fsetup_tools%2Fcheck_perlthreading.pl;h=22666e3c08e10fab0c26931b3dc41016aabe4fc9;hp=0000000000000000000000000000000000000000;hb=74e058c8a010ef6feb539248a550d0bb169c1e94;hpb=35359a73152b3d7a9ad5e3d37faf81f6fedb76e8 diff --git a/torrus/setup_tools/check_perlthreading.pl b/torrus/setup_tools/check_perlthreading.pl new file mode 100644 index 000000000..22666e3c0 --- /dev/null +++ b/torrus/setup_tools/check_perlthreading.pl @@ -0,0 +1,37 @@ + +use threads; + +$| = 1; + +print "The child thread must keep ticking while the main thread sleeps\n"; +print "If it's not so, then we have a compatibility problem\n"; + + + +my $thrChild = threads->create( \&child ); +$thrChild->detach(); + +print "P> Launched the child thread. Now I sleep 20 seconds\n"; +sleep(20); +print "P> Parent woke up. Was there ticking inbetween?\n"; + +exit 0; + + + +sub child +{ + print "C> Child thread started. I will print 10 lines, one per second\n"; + + foreach my $i (1..10) + { + print("C> Child tick " . $i . "\n"); + sleep(1); + } +} + + + + + +