-BEGIN {
- if ($ithreads) {
- XSLoader::load 'threads';
- for my $m (qw(new join detach yield self tid equal)) {
- no strict 'refs';
- *{"Thread::$m"} = \&{"threads::$m"};
- }
- XSLoader::load 'threads::shared';
- for my $m (qw(cond_signal cond_broadcast cond_wait unlock share)) {
- no strict 'refs';
- *{"Thread::$m"} = \&{"threads::shared::${m}_enabled"};
- }
- # trying to unimplement eval gives redefined warning
- unimplement(qw(list done flags));
- } elsif ($othreads) {
- XSLoader::load 'Thread';
- unimplement(qw(unlock));
- } else {
- require Carp;
- Carp::croak("This Perl has neither ithreads not 5005threads");
- }
-}
+L<threads>, L<threads::shared>, L<Thread::Queue>, L<Thread::Semaphore>