in reply to Re^5: Threads From Hell #3: Missing Some Basic Prerequisites
in thread Threads From Hell #3: Missing Some Basic Prerequisites [Solved]
"A few more details on that?"
My pleasure:
use Thread::Queue; use strict; use warnings; use feature qw(say); my $width = 10; my $height = 10; my $queue = Thread::Queue->new(); for my $y ( 0 .. $width - 1 ) { my @colors; for my $x ( 0 .. $height - 1 ) { push @colors, mandelbrot(); } $queue->enqueue( [ $y, @colors ] ); } $queue->end; while ( my ( $y, @colors ) = @{ $queue->dequeue } ) { say qq($_, $y, $colors[$_])for 0 .. $#colors; } # this is still a fake! sub mandelbrot { int rand 20; } __END__ \monks>undef.pl 0, 0, 8 1, 0, 4 2, 0, 7 ... 7, 9, 10 8, 9, 3 9, 9, 0 Can't use an undefined value as an ARRAY reference at C:\Dokumente und + Einstellungen\karl\Desktop\monks\undef.pl line 20.
This doesn't complain:
while ( my $item = $queue->dequeue ) { my ( $y, @colors ) = @$item; say qq($_, $y, $colors[$_]) for 0 .. $#colors; }
Best regards, Karl
«The Crux of the Biscuit is the Apostrophe»
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^7: Threads From Hell #3: Missing Some Basic Prerequisites
by BrowserUk (Patriarch) on Jun 03, 2015 at 13:13 UTC |