From: Elizabeth Mattijsen Date: Fri, 10 Oct 2003 16:37:55 +0000 (+0200) Subject: threads::async + some cleanup X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=abec23e71b5d54dc73752d78864a1da13b1510e0;p=p5sagit%2Fp5-mst-13.2.git threads::async + some cleanup Message-Id: p4raw-id: //depot/perl@21436 --- diff --git a/ext/threads/threads.pm b/ext/threads/threads.pm index 6709f63..e3c75c1 100755 --- a/ext/threads/threads.pm +++ b/ext/threads/threads.pm @@ -31,8 +31,6 @@ use overload '==' => \&equal, 'fallback' => 1; -#use threads::Shared; - BEGIN { warn "Warning, threads::shared has already been loaded. ". "To enable shared variables for these modules 'use threads' ". @@ -55,15 +53,11 @@ async our $VERSION = '1.00'; -sub equal { - return 1 if($_[0]->tid() == $_[1]->tid()); - return 0; -} +# || 0 to ensure compatibility with previous versions +sub equal { ($_[0]->tid == $_[1]->tid) || 0 } -sub async (&;@) { - my $cref = shift; - return threads->new($cref,@_); -} +# use "goto" trick to avoid pad problems from 5.8.1, should also be faster +sub async (&;@) { unshift @_,'threads'; goto &new } sub object { return undef unless @_ > 1;