How to know if all pending tevent_req requests have completed?
Jeremy Allison
jra at samba.org
Thu Feb 23 00:39:50 UTC 2017
On Thu, Feb 23, 2017 at 11:18:41AM +1100, Amitay Isaacs wrote:
> Hi tevent experts,
>
> tevent_req_poll() allows to wait for a specific request.
>
> If I want to create n requests and wait for all of them to finish, is there
> an easy way to do it?
>
> Here is an example computation:
>
> run_event_send()
> ... run scripts one after the other ...
>
> if (timer expires) {
> run_debug_send()
> tevent_req_done()
> }
>
> In this case, run_debug_send() computation is *not* hanging off the
> run_event_send() request.
> The calling code needs to know that run_event computation has timed out,
> but doesn't really care whether debugging computation is over or not. The
> debug program can run in the background and log useful debug information
> without affecting the caller.
Can't you use tevent_wakeup_send() to set a timeout on the
tevent context, and then check the state of each req you've
saved off in a list somewhere by using tevent_req_is_in_progress() ?
More information about the samba-technical
mailing list