DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des traitements / Threads, sémaphores, signaux et mutex
  • Mode de partage des sémaphores
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
Crée un sémaphore.
Rappel : Les sémaphores permettent de définir une zone de code protégée qui ne peut être exécutée que par un nombre spécifique de threads.
Exemple
// Création d'un sémaphore
SémaphoreCrée("MonSémaphore", 3)
Syntaxe
SémaphoreCrée(<Nom du sémaphore> [, <Autorisation> [, <Utilisation> [, <Options>]]])
<Nom du sémaphore> : Chaîne de caractères
Nom du sémaphore à créer. Ce nom sera utilisé dans toutes les fonctions de gestion des sémaphores.
<Autorisation> : Entier optionnel
Nombre de threads autorisés simultanément dans la zone protégée. Par défaut, ce paramètre est égal à 1.
<Utilisation> : Entier optionnel
Nombre de threads déjà dans la zone au moment de la création du sémaphore (0 par défaut).
<Options> : Constante optionnelle de type Entier
Mode de partage du sémaphore :
partageAucunLe sémaphore est propre à l'application. Si la fonction SémaphoreDétruit n'est pas appelée, le sémaphore est détruit à la fin de l'application.
AndroidWidget AndroidiPhone/iPadJava Les sémaphores sont uniques pour l'application qui les a créés. Ils ne peuvent pas être partagés entre plusieurs applications.
partageGlobalLe sémaphore est partagé avec toutes les applications de la machine.
AndroidWidget AndroidiPhone/iPadJava Cette constante n'est pas disponible.
partageUtilisateur
(valeur par défaut)
Le sémaphore est partagé avec toutes les applications de la session de l'utilisateur qui exécute l'application.
AndroidWidget AndroidiPhone/iPadJava Cette constante n'est pas disponible.
Remarques
WINDEVWEBDEV - Code ServeurEtats et RequêtesCode Utilisateur (MCU)Ajax

Mode de partage des sémaphores

En mode partageUtilisateur, le sémaphore est partagé avec toutes les applications de la session de l'utilisateur qui exécute l'application.
  • Le sémaphore est créé par la première application de la session de l'utilisateur qui appelle la fonction SémaphoreCrée.
  • Les applications suivantes qui appellent la fonction SémaphoreCrée se connectent au sémaphore existant.
  • La dernière application qui se ferme détruit le sémaphore.
  • Un sémaphore de même nom n'est pas utilisable par une session d'un autre utilisateur sur la même machine : le système renvoie une erreur de droits d'accès.
En mode partageGlobal, le sémaphore est partagé avec toutes les applications de la machine.
  • Le sémaphore est créé par la première application qui appelle la fonction SémaphoreCrée.
  • Les applications suivantes qui appellent la fonction SémaphoreCrée se connectent au sémaphore existant.
  • La dernière application qui se ferme détruit le sémaphore.
Composante : wd300vm.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 19/09/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale