in reply to open ($FH,"<named pipe") blocking

And now the easy way:
open(X,"+<$INFILE");open(IN_FH,"<$INFILE");close(X); # ^please note the +