ARES_QUEUE(3) Introduction to Library Functions ARES_QUEUE(3)
NAME
ares_queue_wait_empty, ares_queue_active_queries - Functions for
checking the c-ares queue status
SYNOPSIS
#include <ares.h>
size_t ares_queue_active_queries(const ares_channel_t *channel);
ares_status_t ares_queue_wait_empty(ares_channel_t *channel,
int timeout_ms);
DESCRIPTION
The
ares_queue_active_queries(3) function retrieves the total number
of active queries pending answers from servers. Some c-ares requests
may spawn multiple queries, such as
ares_getaddrinfo(3) when using
AF_UNSPEC, which will be reflected in this number. The
channel parameter must be set to an initialized channel.
The
ares_queue_wait_empty(3) function blocks until notified that
there are no longer any queries in queue, or the specified timeout
has expired. The
channel parameter must be set to an initialized
channel. The
timeout_ms parameter is the number of milliseconds to
wait for the queue to be empty or -1 for Infinite.
RETURN VALUES
ares_queue_active_queries(3) returns the active query count.
ares_queue_wait_empty(3) can return any of the following values:
ARES_ENOTIMP if not built with threading support
ARES_ETIMEOUT if requested timeout expired
ARES_SUCCESS when queue is empty.
AVAILABILITY
This function was first introduced in c-ares version 1.27.0, and
requires the c-ares library to be built with threading support.
SEE ALSO
ares_init_options(3),
ares_threadsafety(3) 16 February 2024 ARES_QUEUE(3)