From 6273b23a05ddfd1462068b5f5d8a3ba3ebe7ac3d Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 9 Jul 2014 22:06:34 -0500 Subject: FAQ: expand the thread-safe section ... with a mention of *NOSIGNAL, based on talk in bug #1386 --- docs/FAQ | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'docs/FAQ') diff --git a/docs/FAQ b/docs/FAQ index 29355f093..0850bd46a 100644 --- a/docs/FAQ +++ b/docs/FAQ @@ -1099,6 +1099,12 @@ FAQ your system has such. Note that you must never share the same handle in multiple threads. + libcurl's implementation of timeouts might use signals (depending on what it + was built to use for name resolving), and signal handling is generally not + thread-safe. Multi-threaded Applicationss that call libcurl from different + threads (on different handles) might want to use CURLOPT_NOSIGNAL, e.g.: + + curl_easy_setopt(handle, CURLOPT_NOSIGNAL, true); If you use a OpenSSL-powered libcurl in a multi-threaded environment, you need to provide one or two locking functions: -- cgit v1.2.1