in reply to Watching a named pipe

I know you said you don't want to open it first, but I don't know if there is any other way to do it.

What if you did something like this? (untested):

use IO::Select; open my $fh, "<", $fifo or die "couldn't open $fifo: $!"; my $sel = IO::Select->new($fh); if ($sel->can_read(0.1)) { close $fh; do_database_stuff(); }

Replies are listed 'Best First'.
Re^2: Watching a named pipe
by educated_foo (Vicar) on Feb 26, 2009 at 03:48 UTC
    More simply:
    open FH, $fifo or die $!; while (select($ready = fileno(FH), undef, undef, undef)) { # do stuff... }