1BEGIN {
2    eval { require Config; import Config };
3    if ($@) {
4	print "1..0 # Skip: no Config\n";
5	exit(0);
6    }
7}
8
9use Thread;
10
11$| = 1;
12
13srand($$^$^T);
14
15sub printargs {
16    my $thread = shift;
17    my $arg;
18    my $i;
19    while ($arg = shift) {
20	my $delay = int(rand(500));
21	$i++;
22	print "$thread arg $i is $arg\n";
23	1 while $delay--;
24    }
25}
26
27sub start_thread {
28    my $thread = shift;
29    my $count = 10;
30    while ($count--) {
31	my(@args) = ($thread) x int(rand(10));
32	print "$thread $count calling printargs @args\n";
33	printargs($thread, @args);
34    }
35}
36
37new Thread (\&start_thread, "A");
38new Thread (\&start_thread, "B");
39#new Thread (\&start_thread, "C");
40#new Thread (\&start_thread, "D");
41#new Thread (\&start_thread, "E");
42#new Thread (\&start_thread, "F");
43
44print "main: exiting\n";
45