<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">А если исключить ресолвер  как в
      предыдущем письме? <br>
      <br>
      Тоже зависает?<br>
      <br>
      16.10.2013 14:46, ksvs пишет:<br>
    </div>
    <blockquote
      cite="mid:1381920362.1855.YahooMailNeo@web171504.mail.ir2.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial,
        Lucida Grande, Sans-Serif;font-size:10pt">А у меня зависает.<br>
        <div><span><br>
          </span></div>
        <div style="display: block;" class="yahoo_quoted"> <br>
          <br>
          <div style="font-family: HelveticaNeue, Helvetica Neue,
            Helvetica, Arial, Lucida Grande, Sans-Serif; font-size:
            10pt;">
            <div style="font-family: HelveticaNeue, Helvetica Neue,
              Helvetica, Arial, Lucida Grande, Sans-Serif; font-size:
              12pt;">
              <div dir="ltr"> <font face="Arial" size="2"> On
                  Wednesday, 16 October 2013, 13:02, Гришаев Анатолий
                  <a class="moz-txt-link-rfc2396E" href="mailto:0body0@rambler.ru"><0body0@rambler.ru></a> wrote:<br>
                </font> </div>
              <div class="y_msg_container">Перед форком или сразу после
                нужно очистить кэш DNS:<br clear="none">
                $AnyEvent::DNS::RESOLVER = undef;<br clear="none">
                <br clear="none">
                <br clear="none">
                Вот уже работающий пример:<br clear="none">
                ==============================<br clear="none">
                $| = 1;<br clear="none">
                use strict;<br clear="none">
                use warnings;<br clear="none">
                use AnyEvent::DNS ();<br clear="none">
                <br clear="none">
                use EV;<br clear="none">
                $EV::FLAG_FORKCHECK = 1;<br clear="none">
                use AnyEvent;<br clear="none">
                use AnyEvent::HTTP;<br clear="none">
                <br clear="none">
                my $URL = "<a moz-do-not-send="true" shape="rect"
                  href="http://www.bing.com/" target="_blank">http://www.bing.com</a>";<br
                  clear="none">
                <br clear="none">
                if ($ARGV[0]) {<br clear="none">
                    my $w = AnyEvent->condvar;<br clear="none">
                    http_get $URL, persistent => 0, keepalive =>
                0, sub {<br clear="none">
                        print ". $_[1]{Status} $_[1]{Reason} $_[1]{URL};
                $$\n";<br clear="none">
                        $w->send;<br clear="none">
                    };<br clear="none">
                    $w->recv;<br clear="none">
                    print "...\n";<br clear="none">
                }<br clear="none">
                <br clear="none">
                use IO::Socket;<br clear="none">
                socketpair(my $child, my $parent, AF_UNIX, SOCK_STREAM,
                PF_UNSPEC) or <br clear="none">
                die "socketpair: $!";<br clear="none">
                <br clear="none">
                $AnyEvent::DNS::RESOLVER = undef;<br clear="none">
                my $kid_pid = fork;<br clear="none">
                defined $kid_pid or die "Can't fork: $!";<br
                  clear="none">
                <br clear="none">
                unless ($kid_pid) {<br clear="none">
                    close $child;<br clear="none">
                    my $w = AnyEvent->condvar;<br clear="none">
                    my $wr = AnyEvent->io(fh => $parent, poll
                => "r", cb => sub {<br clear="none">
                        my $len = sysread $parent, my $buf, 1024;<br
                  clear="none">
                        unless ($len) {<br clear="none">
                            # print"child EXIT\n";<br clear="none">
                            exit;<br clear="none">
                        };<br clear="none">
                        print $buf;<br clear="none">
                <br clear="none">
                        http_get $URL, persistent => 0, sub {<br
                  clear="none">
                            print "+ $_[1]{Status} $_[1]{Reason}
                $_[1]{URL}; $$\n";<br clear="none">
                            syswrite $parent, "pong\n";<br clear="none">
                        };<br clear="none">
                    });<br clear="none">
                    $w->recv;<br clear="none">
                    exit;<br clear="none">
                } else {<br clear="none">
                    close $parent;<br clear="none">
                    my $i = 0;<br clear="none">
                    my $w = AnyEvent->condvar;<br clear="none">
                    my $wr = AnyEvent->io(fh => $child, poll =>
                "r", cb => sub {<br clear="none">
                        sysread $child, my $buf, 1024;<br clear="none">
                        # print $buf;<br clear="none">
                        if (++$i > 3) {<br clear="none">
                            # print "parent EXIT\n";<br clear="none">
                            exit;<br clear="none">
                        } else {<br clear="none">
                            syswrite $child, "ping $i\n";<br
                  clear="none">
                        }<br clear="none">
                    });<br clear="none">
                    syswrite $child, "ping $i\n";<br clear="none">
                    $w->recv;<br clear="none">
                }<br clear="none">
                <br clear="none">
                ==============================<br clear="none">
                <br clear="none">
                <br clear="none">
                -- <br clear="none">
                С уважением Анатолий.
                <div class="yqt0443567821" id="yqtfd15139"><br
                    clear="none">
                  -- <br clear="none">
                  Moscow.pm mailing list<br clear="none">
                  <a moz-do-not-send="true" shape="rect"
                    ymailto="mailto:moscow-pm@pm.org"
                    href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a>
                  | <a moz-do-not-send="true" shape="rect"
                    href="http://moscow.pm.org/" target="_blank">http://moscow.pm.org</a><br
                    clear="none">
                </div>
                <br>
                <br>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
    </blockquote>
    <br>
    <br>
    <div class="moz-signature">-- <br>
      С уважением Анатолий.</div>
  </body>
</html>