The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

IO::Async::Resolver::LibAsyncNS - use libasyncns for IO::Async resolver queries

SYNOPSIS

 use IO::Async::Loop;
 use IO::Async::Resolver::LibAsyncNS;

 my $loop = IO::Async::Loop->new;

 my $resolver = IO::Async::Resolver::LibAsyncNS->new;
 $loop->add( $resolver );

 $resolver->getaddrinfo(
    host => "metacpan.org",
    service => "http",
    socktype => "stream",
 )->on_done( sub {
    my @res = @_;
    print "metacpan.org available at\n";
    printf "  family=%d addr=%v02x\n", $_->{family}, $_->{addr} for @res;
 })->get;

DESCRIPTION

This subclass of IO::Async::Resolver applies special handling to the getaddrinfo_hash and getnameinfo resolvers to use a Net::LibAsyncNS instance, rather than using the usual IO::Async::Function wrapper around the system resolver functions. This may lead to higher performance in some applications.

It provides no additional methods, configuration options or events besides those supported by IO::Async::Resolver itself. It exists purely to implement the same behaviours in a more efficient manner.

AUTHOR

Paul Evans <leonerd@leonerd.org.uk>