openusb_wait, openusb_pollopenusb_wait, openusb_poll -- Wait for I/O request completion, Poll completion status of I/O request num_reqs Number of requests to wait/poll.
handles Array of request handles to wait/poll.
handle Completed request handle.
openusb_wait() can be called to wait for completion on num_reqs
of request handles. If one request was completed, openusb_wait
will return its handle in handle. Otherwise, openusb_wait
will block until one request gets completed.
openusb_poll() is different from openusb_wait. It
checks if any request in handles has been completed. If there's one,
openusb_poll will return this request's handle in handle.
Otherwise, it returns immediately with handle set to NULL. No block at all.
For both functions, caller should allocate an array of num_reqs elements
for handles and set every element to the request handles to be checked.
If application has set callback in request when submitting it in openusb_xfer_aio
, it should NOT call the above functions to wait/poll that request.
openusb_wait(), openusb_poll() returns 0 on success.
Otherwise, a openusb error is returned.
LIBUSB_SUCCESS No errors.
LIBUSB_BADARG handles or handle
is not valid. Either they are NULL or some member of request is
invalid.
LIBUSB_UNKNOWN_DEVICE Can't find the device specified in request.
LIBUSB_PLATFORM_FAILURE Unspecified kernel/driver failure
LIBUSB_NO_RESOURCES Memory allocation failure
LIBUSB_IO_* USB host controller errors