diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2010-01-28 20:04:19 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2010-01-28 20:04:19 +0100 |
commit | 03ff51230ea260b3aab05fe07c0c7f66c94b176c (patch) | |
tree | 504b6929a32c518712b9da03f3e02d0a7536957e /ares_library_cleanup.3 | |
download | c-ares-03ff51230ea260b3aab05fe07c0c7f66c94b176c.tar.gz c-ares-03ff51230ea260b3aab05fe07c0c7f66c94b176c.tar.xz c-ares-03ff51230ea260b3aab05fe07c0c7f66c94b176c.zip |
Initial import
Diffstat (limited to 'ares_library_cleanup.3')
-rw-r--r-- | ares_library_cleanup.3 | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/ares_library_cleanup.3 b/ares_library_cleanup.3 new file mode 100644 index 0000000..2a3f1c2 --- /dev/null +++ b/ares_library_cleanup.3 @@ -0,0 +1,74 @@ +.\" $Id: ares_library_cleanup.3,v 1.5 2009-11-24 10:08:45 yangtse Exp $ +.\" +.\" Copyright 1998 by the Massachusetts Institute of Technology. +.\" Copyright (C) 2004-2009 by Daniel Stenberg +.\" +.\" Permission to use, copy, modify, and distribute this +.\" software and its documentation for any purpose and without +.\" fee is hereby granted, provided that the above copyright +.\" notice appear in all copies and that both that copyright +.\" notice and this permission notice appear in supporting +.\" documentation, and that the name of M.I.T. not be used in +.\" advertising or publicity pertaining to distribution of the +.\" software without specific, written prior permission. +.\" M.I.T. makes no representations about the suitability of +.\" this software for any purpose. It is provided "as is" +.\" without express or implied warranty. +.\" +.TH ARES_LIBRARY_CLEANUP 3 "19 May 2009" +.SH NAME +ares_library_cleanup \- c-ares library deinitialization +.SH SYNOPSIS +.nf +.B #include <ares.h> +.PP +.B void ares_library_cleanup(void) +.PP +.B cc file.c -lcares +.fi +.SH DESCRIPTION +.PP +The +.B ares_library_cleanup +function uninitializes the c-ares library, freeing all resources +previously aquired by \fIares_library_init(3)\fP when the library +was initialized. +.PP +This function must be called when the program using c-ares will +no longer need any c-ares function. Once the program has called +\fIares_library_cleanup(3)\fP it shall not make any further call to any +c-ares function. +.PP +This function does not cancel any pending c-ares lookups or requests +previously done. Program must use \fIares_cancel(3)\fP for this purpose. +.PP +.B This function is not thread safe. +You have to call it once the program is about to terminate, but this call must +be done once the program has terminated every single thread that it could have +initiated. This is required to avoid potential race conditions in library +deinitialization, and also due to the fact that \fIares_library_cleanup(3)\fP +might call functions from other libraries that are thread unsafe, and could +conflict with any other thread that is already using these other libraries. +.PP +Win32/64 application DLLs shall not call \fIares_library_cleanup(3)\fP from +the DllMain function. Doing so will produce deadlocks and other problems. +.SH AVAILABILITY +This function was first introduced in c-ares version 1.7.0 along with the +definition of preprocessor symbol \fICARES_HAVE_ARES_LIBRARY_CLEANUP\fP as an +indication of the availability of this function. +.PP +Since the introduction of this function, it is absolutely mandatory to call it +for any Win32/64 program using c-ares. +.PP +Non-Win32/64 systems can still use c-ares version 1.7.0 without calling +\fIares_library_cleanup(3)\fP due to the fact that \fIcurrently\fP it is nearly +a do-nothing function on non-Win32/64 platforms. +.SH SEE ALSO +.BR ares_library_init(3), +.BR ares_cancel(3) +.SH AUTHOR +Yang Tse +.PP +Copyright 1998 by the Massachusetts Institute of Technology. +.br +Copyright (C) 2004-2009 by Daniel Stenberg. |