@UnstableApi
    public SELF dnsCache(DnsCache dnsCache) {
        requireNonNull(dnsCache, "dnsCache");
        this.dnsCache = dnsCache;
        return self();
    }
Sets the {@link DnsCache} that caches the resolved {@link DnsRecord}s and the cause of a failure if
negative cache is activated. This option is useful if you want to share a {@link DnsCache} with
multiple DNS resolvers. If unspecified, the default {@link DnsCache} is used.

<p>Note that if {@link #cacheSpec(String)}, {@link #ttl(int, int)}, or {@link #negativeTtl(int)} is set,
the DNS resolver will create its own {@link DnsCache} using the properties.
Therefore, {@link #cacheSpec(String)}, {@link #ttl(int, int)}, and {@link #negativeTtl(int)} are
mutually exclusive with {@link #dnsCache(DnsCache)}.
core/src/main/java/com/linecorp/armeria/client/AbstractDnsResolverBuilder.java