Service de noyau simple_lock ou simple_lock_try

Objectif

Verrouillage d'un verrou simple.

Syntaxe

#include <sys/lock_def.h>
void simple_lock ( lock_addr)
simple_lock_t lock_addr;
boolean_t simple_lock_try ( lock_addr)
simple_lock_t lock_addr;

Paramètre

Article Descriptif
Add_verrou Indique l'adresse du mot de verrouillage à verrouiller.

Descriptif

Le service de noyau Serrure simple_ verrouille le verrou spécifié ; il bloque si le verrou est occupé. Le verrou doit avoir été précédemment initialisé avec le service de noyau Simple_lock_init . Le service de noyau Serrure simple_ n'a pas de valeur de retour.

Le service de noyau Tât_verrou_simple_simple_ tente de verrouiller le verrou spécifié ; il renvoie immédiatement sans bloquer si le verrou est occupé. Si le verrou est libre, le service de noyau Tât_verrou_simple_simple_ le verrouille. Le verrou doit avoir été précédemment initialisé avec le service de noyau Simple_lock_init .

Remarque: Lorsque vous utilisez des verrous simples pour protéger les sections critiques d'interruption d'unité d'exécution, il est recommandé d'utiliser le service de noyau Verrouillage disable_lock au lieu d'appeler directement le service de noyau Serrure simple_ .

Environnement d'exécution

Les services de noyau Serrure simple_ et Tât_verrou_simple_simple_ peuvent être appelés à partir de l'environnement Processus uniquement.

Valeurs renvoyées

Le service de noyau Tât_verrou_simple_simple_ contient les valeurs de retour suivantes:

Article Descriptif
vrai Indique que le verrou simple a été correctement acquis.
FALSE Indique que le verrou simple est occupé et n'a pas été acquis.