mirror of
https://codeberg.org/kiss-community/repo
synced 2025-01-05 01:10:07 -07:00
63 lines
2.2 KiB
Groff
63 lines
2.2 KiB
Groff
.\" generated by cd2nroff 0.1 from curl_global_cleanup.md
|
|
.TH curl_global_cleanup 3 "2024-11-09" libcurl
|
|
.SH NAME
|
|
curl_global_cleanup \- global libcurl cleanup
|
|
.SH SYNOPSIS
|
|
.nf
|
|
#include <curl/curl.h>
|
|
|
|
void curl_global_cleanup(void);
|
|
.fi
|
|
.SH DESCRIPTION
|
|
This function releases resources acquired by \fIcurl_global_init(3)\fP.
|
|
|
|
You should call \fIcurl_global_cleanup(3)\fP once for each call you make to
|
|
\fIcurl_global_init(3)\fP, after you are done using libcurl.
|
|
|
|
This function is thread\-safe since libcurl 7.84.0 if
|
|
\fIcurl_version_info(3)\fP has the CURL_VERSION_THREADSAFE feature bit set
|
|
(most platforms).
|
|
|
|
If this is not thread\-safe, you must not call this function when any other
|
|
thread in the program (i.e. a thread sharing the same memory) is running.
|
|
This does not just mean no other thread that is using libcurl. Because
|
|
\fIcurl_global_cleanup(3)\fP calls functions of other libraries that are
|
|
similarly thread unsafe, it could conflict with any other thread that uses
|
|
these other libraries.
|
|
|
|
See the description in \fIlibcurl(3)\fP of global environment requirements for
|
|
details of how to use this function.
|
|
.SH CAUTION
|
|
\fIcurl_global_cleanup(3)\fP does not block waiting for any libcurl\-created
|
|
threads to terminate (such as threads used for name resolving). If a module
|
|
containing libcurl is dynamically unloaded while libcurl\-created threads are
|
|
still running then your program may crash or other corruption may occur. We
|
|
recommend you do not run libcurl from any module that may be unloaded
|
|
dynamically. This behavior may be addressed in the future.
|
|
|
|
libcurl may not be able to fully clean up after multi\-threaded OpenSSL
|
|
depending on how OpenSSL was built and loaded as a library. It is possible in
|
|
some rare circumstances a memory leak could occur unless you implement your own
|
|
OpenSSL thread cleanup. Refer to \fIlibcurl\-thread(3)\fP.
|
|
.SH PROTOCOLS
|
|
This functionality affects all supported protocols
|
|
.SH EXAMPLE
|
|
.nf
|
|
int main(void)
|
|
{
|
|
curl_global_init(CURL_GLOBAL_DEFAULT);
|
|
|
|
/* use libcurl, then before exiting... */
|
|
|
|
curl_global_cleanup();
|
|
}
|
|
.fi
|
|
.SH AVAILABILITY
|
|
Added in curl 7.8
|
|
.SH RETURN VALUE
|
|
None
|
|
.SH SEE ALSO
|
|
.BR curl_global_init (3),
|
|
.BR libcurl (3),
|
|
.BR libcurl-thread (3)
|