# File lib/Dnsruby/Resolver.rb, line 329
    def send_async(*args) # msg, client_queue, client_query_id)

      if (!@configured)
        add_config_nameservers
      end
      #      @single_res_mutex.synchronize {

      if (!@resolver_ruby) # @TODO@ Synchronize this?

        @resolver_ruby = ResolverRuby.new(self)
      end
      #      }

      client_query_id = @resolver_ruby.send_async(*args)
      if (@single_resolvers.length == 0)
        Thread.start {
          sleep(@query_timeout == 0 ? 1 : @query_timeout)
          args[1].push([client_query_id, nil, ResolvTimeout.new("Query timed out - no nameservers configured")])
        }
      end
      return client_query_id
    end