title: How do I open more than 64 child processes on windows using IPC::Open3 in perl?
body: <p>I get the following error when I try to open the 65th child process in windows:
  <code>open3: IO::Pipe: Can't spawn-NOWAIT: Resource temporarily unavailable</code></p>
  
  <p>How do I open more than 64 child processes on windows using IPC::Open3 in perl?</p>
  
  <p>The following code works fine in linux but fails with the above error on windows:</p>
  
  <pre><code>use POSIX qw[ :sys_wait_h ];;
  use IPC::Open3;
  use Carp;
  use FileHandle;
  
  
  my $i = 0;
  
  while ($i &lt; 300){
      my($IN)  = new FileHandle;
      my($OUT) = new FileHandle;    
      my($ERR) = new FileHandle;
  
      $IN-&gt;autoflush(1);
      $ERR-&gt;autoflush(1);
  
      my($childpid) = IPC::Open3::open3($IN, $OUT, $_ERR, "&lt;xyz process&gt;")  or 
                      Carp::confess("/n=====$i=======/nCould not open pipe");
  
      waitpid( $childpid, &amp;WNOHANG);
  
      $ASPELL_IN-&gt;close();
      $ASPELL_OUT-&gt;close();
      kill(0,$childpid);
  }
  </code></pre>