in reply to Stability of threads in perl 5.8?
For simplicity, does it get much easier? Just supply the name of the directory containing the files and you're off. ^C to end it.
#! perl -slw use strict; use threads; use threads::shared; use File::Tail; my $quit :shared = 0; $SIG{ INT } = sub{ $quit = 1; warn 'Quiting'; }; sub thread { my $tid = threads->self->tid; my $name = shift; my $file = File::Tail->new( $name ); while( not $quit and defined( my $line = $file->read ) ) { print "$tid ($name) '$line'"; } } $_->join for map{ threads->create( \&thread, $_ ) } glob $ARGV[ 0 ];
For stability, make sure you use the latest version of Perl (5.8.8), threads, and threads::shared.
If you test your solution and are happy with it before you put it into production, then it should be stable. As with pretty much any feature of perl, it is possible you will encounter a bug once in production, but if you've stayed within the limitations of the features you use, and tested thoroughly, you'd be unlucky to do so.
|
|---|