1. NOM▲
aio_suspend - Attendre une opération d'E/S asynchrone ou un délai
2. SYNOPSIS ▲
#include <aio.h>
int
aio_suspend
(
const
struct
aiocb *
const
aiocb_list[],
int
nitems, const
struct
timespec *
timeout);
Effectuez l'
édition des liens avec l
'
option -
lrt.
3. DESCRIPTION ▲
La fonction aio_suspend() suspend le processus léger appelant tant que l'un des événements suivants ne se produisent :
* 3 Une ou plusieurs requêtes asynchrones d'E/S de la liste aiocb_list se sont terminées.
* Un signal est reçu.
* timeout est non NULL et l'intervalle de temps spécifié a expiré. Consultez nanospleep(2) pour plus de détails sur la structure timespec.
Le paramètre nitems spécifie le nombre d'éléments dans aiocb_list. Chaque élément de la liste pointée par aiocb_list doit être soit NULL (auquel cas il est ignoré), soit un pointeur vers un bloc de contrôle sur lequel a été initiée une E/S en utilisant aio_read(3), aio_write(3), ou lio_listio(3). Consultez aio(7) pour une description de la structure aiocb.
Si CLOCK_MONOTONIC est géré, cette horloge est utilisée pour mesurer l'intervalle de dépassement du délai (consultez clock_gettime(3)).
4. VALEUR RENVOYÉE ▲
Si cette fonction se termine après l'achèvement de l'une des requêtes d'E/S indiquées dans aiocb_list, elle renvoie 0. Autrement, elle renvoie -1 et définit errno en conséquence.
5. ERREURS ▲
- EAGAIN
L'appel s'est achevé par un dépassement de délai avant qu'au moins une des opérations indiquées ne soit terminée. - EINTR
L'appel s'est achevé par un signal ; consultez signal(7). (Il est possible que ce soit un signal d'achèvement de l'une des opérations que l'on attendait). - ENOSYS
aio_suspend() n'est pas implémenté.
6. VERSIONS ▲
La fonction aio_suspend() est disponible depuis la glibc 2.1.
7. CONFORMITÉ ▲
POSIX.1-2001, POSIX.1-2008.
8. NOTES ▲
Il est possible d'effectuer une scrutation en utilisant un délai timeout non nul qui spécifie un intervalle de temps nul. Si une ou plusieurs opérations d'E/S asynchrones spécifiées dans aiocb_list se sont déjà terminées au moment de l'appel à aio_suspend(), alors l'appel renvoie immédiatement. Pour déterminer quelles opérations d'E/S se sont terminées après un retour avec succès de aio_suspend(), utilisez aio_error(3) pour parcourir les structures aiocb pointées par aiocb_list.
9. VOIR AUSSI ▲
aio_cancel(3), aio_error(3), aio_fsync(3), aio_read(3), aio_return(3), aio_write(3), lio_listio(3), aio(7), time(7)
10. COLOPHON ▲
Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
11. TRADUCTION ▲
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Alain Portal <http://manpagesfr.free.fr/> (2004-2006). Florentin Duneau et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».