curl / Mailing Lists / curl-library / Single Mail
Buy commercial curl support. We help you work out your issues, debug your libcurl applications, use the API, port to new platforms, add new features and more. With a team lead by the curl founder Daniel himself.

Questions about new multi-handle notifications

From: Dmitry Karpov via curl-library <curl-library_at_lists.haxx.se>
Date: Wed, 5 Nov 2025 22:18:34 +0000

I noticed that the 8.17.0 release now has multi-handle notifications enabled via the curl_multi_notify_enable() API,
and I have questions about the CURLMNOTIFY_INFO_READ and CURLMNOTIFY_EASY_DONE notifications
as I don't fully understand how to use them with curl_multi_perform().

As I understand, the purpose of CURLMNOTIFY_INFO_READ event is to allow to dispatch messages for completed transfers -
call curl_multi_info_read() and then check CURLMSG_DONE, which is typically done after calling curl_multi_perform().

I am wondering if this notification is called inside the curl_multi_perform(), so it allows to dispatch transfer messages as soon as they are put into the message queue
while curl_multi_perform() is running?
Or something else should be driving the multi-handle (not curl_multi_perform()) to trigger this notification?

I am also confused about the CURLMNOTIFY_EASY_DONE notification.
The documentation says: " this notification is triggered when an easy handle has finished ".

Isn't it kind of the same as CURLMNOTIFY_INFO_READ with CURLMSG_DONE handling or it has a totally different meaning?
Does it allow to skip calling curl_multi_info_read() with CURLMSG_DONE or the client still needs to call it even if it subscribes to this notification?

If calling calling curl_multi_info_read() with CURLMSG_DONE is still needed, then I think it is enough for client to use just the CURLMNOTIFY_INFO_READ with CURLMSG_DONE
to know when some particular easy transfer is done, and there is no need to use the CURLMNOTIFY_EASY_DONE notification. Or I am missing something?

It would be helpful to get some clarifications and explanations how these new cool features are expected to be used.

Thanks,
Dmitry Karpov

-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html
Received on 2025-11-05