WAKE_UP

Section: Fonctions du noyau Linux (9)
Updated: 19 Mars 1999
Index Retour au Menu Principal

 

NOM

wake_up - réveille les processus en sommeil  

SYNOPSIS

#include <linux/sched.h>
void wake_up(struct wait_queue**condition)
 

DESCRIPTION

La fonction wake_up réalise le contraire de la fonction sleep_on(9) en ceci qu'elle réveille les processus qui ont été suspendus sur une même variable conditionnelle (en attente d'un évènement dans une file d'attente). Tous les processus suspendus sur la condition passée en paramètre sont réactivés. Si aucun processus n'est en attente sur la condition, alors aucun n'est affecté.

Contrairement à la fonction sleep_on(9) , wake_up n'est pas bloquante et peut être appelée dans les gestionnaires d'interruptions. Il s'agit en fait du principal moyen de synchronisation par rapport aux évènements de type interruption.

Si le paramètre condition vaut NULL, ou s'il n'y a pas de processus en attente de condition, l'appel de wake_up ne fait rien (no-op).  

VALEUR RENVOYÉE

Aucune.  

DISPONIBILITÉ

Linux 1+  

VOIR AUSSI

sleep_on(9)

/usr/src/linux/kernel/sched.c  

BOGUES

[Ndt : jusqu'aux premières versions 2.2.x, wake_up réveillait tous les processus en attente. Pour des raisons de performance, ce n'est plus le cas. Par exemple, lorsque plusieurs démons httpd attendent dans un select sur une socket, comme seul l'un d'eux pourra traiter une demande de connexion, l'ordonnanceur ne réveillera plus qu'un seul processus.]  

AUTEUR

Stephen Williams <steve@icarus.com>  

TRADUCTION

Thierry Vignaud <tvignaud@mandrakesoft.com>, 1999



 

Index

NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
DISPONIBILITÉ
VOIR AUSSI
BOGUES
AUTEUR
TRADUCTION


Time: 09:54:52 GMT, December 26, 2004