vendor/bundle/ruby/2.7.0/gems/dnsruby-1.61.5/lib/dnsruby/resolver.rb
#  MUST BE CALLED IN A SYNCHRONIZED BLOCK!
#
#  Sends the result to the client's queue, and removes the queue observer from the select thread
MUST BE CALLED IN A SYNCHRONIZED BLOCK.
Sends the result to the client's queue, and removes the queue observer from the select thread
MUST BE CALLED IN A SYNCHRONIZED BLOCK . Sends the result to the client ' s queue and removes the queue observer from the select thread
def send_result(client_queue, client_query_id, select_queue, msg, error) 
      stop_querying(client_query_id)  
      st = SelectThread.instance
      st.remove_observer(select_queue, self)
      @query_list.delete(client_query_id)
      client_queue.push([client_query_id, msg, error])
    end
def send_result ( client_queue , client_query_id , select_queue , msg , error ) stop_querying ( client_query_id ) st = SelectThread . instance st . remove_observer ( select_queue , self ) @query_list . delete ( client_query_id ) client_queue . push ( [ client_query_id , msg , error ] ) end
MUST BE CALLED IN A SYNCHRONIZED BLOCK!
MUST BE CALLED IN A SYNCHRONIZED BLOCK!
# :nodoc: all # @TODO@ ! #  We might still get some callbacks, which we should ignore #       @mutex.synchronize{ #  Remove the query from all of the data structures #       } #  Return the response to the client
client_queue
<not_specific>
client_query_id
<not_specific>
select_queue
<not_specific>
msg
<not_specific>
error
<not_specific>