This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to Time-HiRes-1.77
[perl5.git] / ext / Thread / unsync4.tx
CommitLineData
0fcb073c
JH
1BEGIN {
2 eval { require Config; import Config };
3 if ($@) {
4 print "1..0 # Skip: no Config\n";
5 exit(0);
6 }
0fcb073c
JH
7}
8
d9bb3666
MB
9use Thread;
10
11$| = 1;
12
13srand($$^$^T);
14
15sub printargs {
16 my(@copyargs) = @_;
17 my $thread = shift @copyargs;
18 my $arg;
19 my $i;
20 while ($arg = shift @copyargs) {
21 my $delay = int(rand(500));
22 $i++;
23 print "$thread arg $i is $arg\n";
24 1 while $delay--;
25 }
26}
27
28sub start_thread {
29 my(@threadargs) = @_;
30 my $thread = $threadargs[0];
31 my $count = 10;
32 while ($count--) {
33 my(@args) = ($thread) x int(rand(10));
34 print "$thread $count calling printargs @args\n";
35 printargs($thread, @args);
36 }
37}
38
39new Thread (\&start_thread, "A");
40new Thread (\&start_thread, "B");
41new Thread (\&start_thread, "C");
42new Thread (\&start_thread, "D");
43new Thread (\&start_thread, "E");
44new Thread (\&start_thread, "F");
45
46print "main: exiting\n";