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_string.t
CommitLineData
1826b481
AB
1BEGIN {
2 chdir 't' if -d 't';
974ec8aa 3 push @INC, '../lib';
1826b481
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
36sub test9 {
37 my $i = shift;
3dbf27b4 38 for(1..500000) { $i++};
1826b481
AB
39}
40my @threads;
41for(3..33) {
9ec9d1e2 42 ok($_,1,"Multiple thread test");
1826b481
AB
43 push @threads ,threads->create('test9',$_);
44}
3dbf27b4 45
1826b481
AB
46my $i = 34;
47for(@threads) {
48 $_->join;
49 ok($i++,1,"Thread joined");
50}
51