|
This is a preliminary implementaion of an iou-abstracted thread
pool.
Two callbacks are provided to iou_async():
async_cb:
Called by a worker thread and must be carefully written for
concurrent execution.
completion_cb:
Called by iou_run() after a thread has finished with async_cb().
As completion_cb() is called in the iou_run() context, assuming
the caller is always entering iou_run() from the main thread,
it may be viewed as a continuation point for the async work
reentering the serial execution flow.
At this time every iou_new() will create two worker threads. In
the future it may just create a thread per core or something like
that.
|