Commit | Line | Data |
0fcb073c |
1 | BEGIN { |
2 | eval { require Config; import Config }; |
3 | if ($@) { |
4 | print "1..0 # Skip: no Config\n"; |
5 | exit(0); |
6 | } |
7 | if ($Config{extensions} !~ /\bThread\b/) { |
8 | print "1..0 # Skip: no use5005threads\n"; |
9 | exit(0); |
10 | } |
11 | } |
12 | |
458fb581 |
13 | use Thread; |
14 | |
15 | use Thread::Specific qw(foo); |
16 | |
17 | sub count { |
18 | my $tid = Thread->self->tid; |
19 | my Thread::Specific $tsd = Thread::Specific::data; |
20 | for (my $i = 0; $i < 5; $i++) { |
21 | $tsd->{foo} = $i; |
22 | print "thread $tid count: $tsd->{foo}\n"; |
23 | select(undef, undef, undef, rand(2)); |
24 | } |
25 | }; |
26 | |
27 | for(my $t = 0; $t < 5; $t++) { |
28 | new Thread \&count; |
29 | } |