Inserts data into the list of tasks to be executed by pool.
When the number of currently running threads is lower than the
maximal allowed number of threads, a new thread is started (or
reused) with the properties given to Thread.poolNew.
Otherwise, data stays in the queue until a thread in this pool
finishes its previous task and processes data.
error can be NULL to ignore errors, or non-NULL to report
errors. An error can only occur when a new thread couldn't be
created. In that case data is simply appended to the queue of
work to do.
Before version 2.32, this function did not return a success status.
Inserts data into the list of tasks to be executed by pool.
When the number of currently running threads is lower than the maximal allowed number of threads, a new thread is started (or reused) with the properties given to Thread.poolNew. Otherwise, data stays in the queue until a thread in this pool finishes its previous task and processes data.
error can be NULL to ignore errors, or non-NULL to report errors. An error can only occur when a new thread couldn't be created. In that case data is simply appended to the queue of work to do.
Before version 2.32, this function did not return a success status.