stas 2003/09/24 12:04:59
Modified: t/response/TestPerl ithreads.pm Log: 'sub : locked {} ' doesn't do anything with ithreads perl, need to explicitly lock a shared lock to ensure thread-safety. Revision Changes Path 1.5 +4 -4 modperl-2.0/t/response/TestPerl/ithreads.pm Index: ithreads.pm =================================================================== RCS file: /home/cvs/modperl-2.0/t/response/TestPerl/ithreads.pm,v retrieving revision 1.4 retrieving revision 1.5 diff -u -u -r1.4 -r1.5 --- ithreads.pm 4 Sep 2003 04:31:45 -0000 1.4 +++ ithreads.pm 24 Sep 2003 19:04:59 -0000 1.5 @@ -49,16 +49,16 @@ require threads::shared; my $counter_priv = 1; my $counter_shar : shared = 1; - my $thr = threads->new(sub : locked { - my $tid = threads->self->tid; + my $thr = threads->new(sub { + my $tid = threads->self->tid; debug "2nd TID is $tid" if defined $tid; $counter_priv += $counter_priv for 1..10; + lock $counter_shar; $counter_shar += $counter_shar for 1..10; - return 2; }); $counter_priv += $counter_priv for 1..10; $counter_shar += $counter_shar for 1..10; - my $ret = $thr->join; + $thr->join; ok t_cmp(2**20, $counter_shar, "shared counter"); ok t_cmp(2**10, $counter_priv, "private counter"); }