1#!/usr/bin/perl 2 3use strict; 4use warnings; 5 6use IO::Async::Loop; 7use IO::Async::Resolver::DNS; 8 9my $loop = IO::Async::Loop->new; 10my $resolver = $loop->resolver; 11 12my @tasks = map { 13 my $type = $_; 14 15 $resolver->res_query( 16 dname => $ARGV[0], 17 type => $type, 18 )->on_done( sub { 19 my ( $pkt, @addrs ) = @_; 20 21 foreach my $addr ( @addrs ) { 22 printf "$type address=%s\n", $addr; 23 } 24 }); 25} qw( A AAAA ); 26 27$loop->await_all( @tasks ); 28