This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #24940] "sub foo :unique" segfaults
[perl5.git] / ext / threads / t / stress_cv.t
CommitLineData
3dbf27b4
AB
1BEGIN {
2 chdir 't' if -d 't';
974ec8aa 3 push @INC, '../lib';
3dbf27b4
AB
4 require Config; import Config;
5 unless ($Config{'useithreads'}) {
6 print "1..0 # Skip: no useithreads\n";
7 exit 0;
8 }
9}
10
11use ExtUtils::testlib;
12use strict;
13BEGIN { print "1..64\n" };
14use threads;
15
16
17print "ok 1\n";
18
19
20
21
22sub ok {
23 my ($id, $ok, $name) = @_;
24
25 # You have to do it this way or VMS will get confused.
26 print $ok ? "ok $id - $name\n" : "not ok $id - $name\n";
27
28 printf "# Failed test at line %d\n", (caller)[2] unless $ok;
29
30 return $ok;
31}
32
33
34ok(2,1,"");
35
36
37my @threads;
38for(3..33) {
39 ok($_,1,"Multiple thread test");
40 push @threads ,threads->create(sub { my $i = shift; for(1..500000) { $i++}},$_);
41}
42
43my $i = 34;
44for(@threads) {
45 $_->join;
46 ok($i++,1,"Thread joined");
47}
48