I don't have any Windows machines to test on; it works on Linux.

One thing I noticed is that my arguments to open3 were wrong. This works better:

my_open3(\*STDIN,'>&STDOUT','>&STDOUT',"ping 10.0.0.1"); my_open3(\*STDIN,'>&STDOUT','>&STDOUT',"ping 10.0.0.100"); my_open3(\*STDIN,'>&STDOUT','>&STDOUT',"ping 10.0.0.2");

Another thing to think about is that CMD.EXE and PING could both be running at the same time, so killing the PID returned by open3 might just kill CMD.EXE and leave PING alone. You might be able to avoid running CMD.EXE by giving open3 ping and its arguments as a list instead of a string:

my_open3(\*STDIN,'>&STDOUT','>&STDOUT','ping', '10.0.0.2');
but I'm not sure.

In reply to Re: Re: Re: Killing of ALL children made by Open3 by sgifford
in thread Killing of ALL children made by Open3 by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.