in reply to Re: Non-blocking pipe write
in thread Non-blocking pipe write

I tried your code but now 1025 messages are written and then the parent blocks again... Any idea why?

Replies are listed 'Best First'.
Re^3: Non-blocking pipe write
by borisz (Canon) on Nov 04, 2004 at 19:41 UTC
    Hmm, no it should not block, the print should return and $result is undefined if the print fail. thats all.
    Boris
      I'm trying to run it under win32 and it doesn't block, but it also doesn't appear to be forking. That is, the child process isn't running at all, yet the "die" doesn't happen, either. I'm also getting a "bad command or file name" message, which seems to be a result of the open($handle, "|-") call. Problem opening a pipe in a win32 machine?
      Hang on - it isn't running under FreeBSD for me, either:
      Can't use an undefined value as a symbol reference at pipes.pl line 8.
      and then it quits. Line 8 is:
      if (!defined($pid = open($handle, "|-"))) {
      I'm just playing with this trying to learn. Sounds like the open is failing. What am I missing? Update: Well, I understand that $handle is undefined at that point. What I am wondering is what it should be.