6 use Config qw/%Config/;
9 if (!$Config{useithreads}) {
12 plan(skip_all => 'This perl wasn\'t built to support threads');
19 use Test::More tests => 5 * (2 + 2 + 1) + 1;
23 diag "Using threads $threads::VERSION";
24 diag "Using threads::shared $threads::shared::VERSION";
31 Thread::Cleanup::register {
32 my $tid = threads->tid;
43 is $x, $num, "\$x in destructor of thread $tid";
52 my $tid = threads->tid;
62 is $x, $y, "\$x in thread $tid";
72 my $thr = threads->create(\&cb, $_);
73 push @tids, $thr->tid;
81 is $x, -1, '$x in the main thread';
84 is $ran{$_}, 1, "thread $_ was run once";
85 is $called{$_}, undef, "thread $_ destructor wasn't called yet";
89 is $called{$_}, 1, "thread $_ destructor was called once at END time"