Feedback as one of the more recent multi-users: - once I read the documentation, it was quite easy to figure out X-) - I find the way of stuffing several easy things into one multi quite intuitive. - there are several use scenarios that can be described as "async" * mine was a pretty simple one where libcurl is selecting itself and there are no handles from somewhere else to watch * I therefore cannot speak on how easy it is to integrate curl handles into your own select/poll/whatever
As a related, but slightly different thought: - the API offered by libnghttp2 has one important feature: it does not do IO itself - it could be an idea to offer a curl API that gets fed with chunks of data to process and hands out other chunks to send. - this would decouple big parts of curl from socket/file handles and would let applications use whatever fits them best (of course, the existing API should stay) My quick, off the hip, thoughts about this... Cheers, Stefan > Am 16.07.2019 um 12:07 schrieb Daniel Stenberg via curl-library > <curl-library@cool.haxx.se>: > > Hi team, > > Recently I've talked to some users who, independently of each other, have > brought up or touched the idea of (easier) async transfers with libcurl. > > The easy interface is fine and yeah, easy, but synchronous, and the multi > interface is powerful and non-blocking and all but not always very easy to > "just do async" with. > > Is there a way and a "need" for easier async with libcurl? If so, how should > the API for this work? > > Is there an existing async API somewhere that's good or useful that we can > learn from or be inspired by? > > If your dream async API came true, how would it work? > > The probably most basic way I can think of is firing off a separate thread > with the "start transfer" call and then have have a way to probe how the > transfer is going and finally a way to signal the completion of the transfer. > > Thoughts? > > -- > > / daniel.haxx.se | Get the best commercial curl support there is - from me > | Private help, bug fixes, support, ports, new features > | https://www.wolfssl.com/contact/ > ------------------------------------------------------------------- > Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library > Etiquette: https://curl.haxx.se/mail/etiquette.html ------------------------------------------------------------------- Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html