# File lib/dnsruby/resolver.rb, line 392
    def send_async(msg, client_queue, client_query_id = nil)
      unless @configured
        add_config_nameservers
      end
      #       @single_res_mutex.synchronize {
      unless @resolver_ruby # @TODO@ Synchronize this?
        @resolver_ruby = ResolverRuby.new(self)
      end
      #       }
      client_query_id = @resolver_ruby.send_async(msg, client_queue, client_query_id)
      if @single_resolvers.length == 0
        Thread.start {
          sleep(@query_timeout == 0 ? 1 : @query_timeout)
          client_queue.push([client_query_id, nil, ResolvTimeout.new('Query timed out - no nameservers configured')])
        }
      end
      client_query_id
    end