Change #262287
| Category | None |
| Changed by | Stefan Eissing <stefan@eissing.org> |
| Changed at | Wed 25 Mar 2026 12:14:21 |
| Repository | https://api.github.com/repos/curl/curl |
| Project | curl/curl |
| Branch | master |
| Revision | 39036c90216e059bbee64b86b198eae3135e0cda |
Comments
async-thrdd: use thread queue for resolving Use a thread queue and pool for asnyc threaded DNS resolves. Add pytest test_21_* for verification. Add `CURLMOPT_RESOLVE_THREADS_MAX` to allow applications to resize the thread pool used. Add `CURLMOPT_QUICK_EXIT` to allow applications to skip thread joins when cleaning up a multi handle. Multi handles in `curl_easy_perform()` inherit this from `CURLOPT_QUICK_EXIT`. Add several debug environment variables for testing. Closes #20936
Changed files
- docs/libcurl/curl_multi_setopt.md
- docs/libcurl/libcurl-env-dbg.md
- docs/libcurl/opts/CURLMOPT_QUICK_EXIT.md
- docs/libcurl/opts/CURLMOPT_RESOLVE_THREADS_MAX.md
- docs/libcurl/opts/Makefile.inc
- docs/libcurl/symbols-in-versions
- include/curl/multi.h
- lib/asyn-thrdd.c
- lib/asyn.h
- lib/cf-socket.c
- lib/cfilters.c
- lib/cfilters.h
- lib/easy.c
- lib/ftp.c
- lib/hostip.c
- lib/hostip.h
- lib/hostip4.c
- lib/hostip6.c
- lib/multi.c
- lib/multihandle.h
- lib/socks.c
- lib/thrdpool.c
- lib/thrdpool.h
- lib/thrdqueue.c
- lib/thrdqueue.h
- lib/url.c
- src/tool_operate.c
- tests/data/test2500
- tests/http/Makefile.am
- tests/http/test_21_resolve.py
- tests/http/testenv/curl.py