ARES_REINIT(3)

NAME
ares_threadsafety - Query if c-ares was built with thread-safety

SYNOPSIS
#include <ares.h>
ares_bool_t ares_threadsafety(void);

DESCRIPTION
The ares_threadsafety(3) function returns if the library was built with thread safety enabled or not. As of c-ares 1.23.0, this simply means that every public function which references an ares_channel_t object will lock the channel on entry and release the lock on exit of the function. This will prevent concurrent thread access to the channel, thus ensuring no corruption can occur. Future versions will likely implement more threading-specific features.

RETURN VALUES
ares_threadsafety(3) can return any of the following values:

ARES_TRUE
    Built with thread safety.

ARES_FALSE
    Built without thread safety

AVAILABILITY
This function was first introduced in c-ares version 1.23.0.

SEE ALSO
ares_init(3), ares_init_options(3), ares_destroy(3), ares_dup(3), ares_library_init(3), ares_set_servers(3)

AUTHOR
Copyright (C) 2023 The c-ares project and its members.