--- Linux-AIO/README 2005/03/08 20:19:00 1.1 +++ Linux-AIO/README 2005/07/08 02:43:47 1.2 @@ -27,10 +27,19 @@ 1, which means a single asynchronous operation can be done at one time (the number of outstanding operations, however, is unlimited). - It is recommended to keep the number of threads low, as many linux + It is recommended to keep the number of threads low, as some linux kernel versions will scale negatively with the number of threads (higher parallelity => MUCH higher latency). + Linux::AIO::max_parallel $nthreads + Sets the maximum number of AIO threads to $nthreads. If more than + the specified number of threads are currently running, kill them. + This function blocks until the limit is reached. + + This module automatically runs "max_parallel 0" at program end, to + ensure that all threads are killed and that there are no outstanding + requests. + $fileno = Linux::AIO::poll_fileno Return the *request result pipe filehandle*. This filehandle must be polled for reading by some mechanism outside this module (e.g. Event @@ -48,6 +57,11 @@ poll => 'r', async => 1, cb => \&Linux::AIO::poll_cb ); + Linux::AIO::poll_wait + Wait till the result filehandle becomes ready for reading (simply + does a select on the filehandle. This is useful if you want to + synchronously wait for some requests to finish). + Linux::AIO::nreqs Returns the number of requests currently outstanding.