4D v16.3

PROCESS PROPERTIES

Accueil

 
4D v16.3
PROCESS PROPERTIES

PROCESS PROPERTIES 


 

PROCESS PROPERTIES ( process ; procNom ; procStatut ; procTemps {; procMode {; uniqueID {; origine}}} ) 
Paramètre Type   Description
process  Entier long in Numéro du process
procNom  Chaîne in Nom du process
procStatut  Entier long in Statut du process
procTemps  Entier long in Temps d'exécution cumulé du process en ticks
procMode  Booléen, Entier long in Si booléen : Visible (Vrai) ou Caché (Faux)
Si entier long (champ de bits) : bit 0 = Visibilité, bit 1 = Exécution en préemptif
uniqueID  Entier long in Numéro unique du process
origine  Entier long in Origine du process

La commande PROCESS PROPERTIES retourne diverses informations sur le process dont vous passez le numéro dans process.

Après l'appel :

  • procNom retourne le nom du process. Quelques points sont à noter à propos du nom du process :
    • Si le process a été démarré depuis la boîte de dialogue Exécuter une méthode (avec l'option Nouveau process sélectionnée), son nom est “P_” suivi d'un numéro.
    • Si le process a été démarré à partir d'une commande de menu personnalisé dont la propriété Démarrer un process est sélectionnée, le nom du process est “M_” ou “ML_” suivi d'un numéro.
    • Si le process a été démarré par le serveur Web, son nom est "Web Process#" suivi d'un identifiant UUID.
    • Si un process a été stoppé (et son “espace” non encore réutilisé), son nom est encore retourné. Pour détecter si un process est stoppé, testez procStatut=-1 (voir ci-dessous).
  • procStatut retourne le statut du process au moment de l'appel. Ce paramètre peut retourner l'une des valeurs fournies par les constantes prédéfinies suivantes (thème Statut du process) :
    Constante Type Valeur
    Aborted Entier long -1
    Delayed Entier long 1
    Does not exist Entier long -100
    Executing Entier long 0
    Hidden modal dialog Entier long 6
    Paused Entier long 5
    Waiting for input output Entier long 3
    Waiting for internal flag Entier long 4
    Waiting for user event Entier long 2
  • procTemps retourne le cumul du temps que le process a utilisé depuis qu'il a été démarré, en ticks (1/60e de seconde).
  • Le paramètre optionnel procMode peut être une variable de type booléen ou entier long :
    • s'il est de type booléen, il retourne Vrai si le process est visible et Faux s'il est caché.
    • s'il est de type entier long, il contient après l’exécution de la méthode un champ de bits où les deux premiers bits sont définis :
      • le bit 0 retourne la propriété de visibilité : 1 si le process est visible, et 0 s'il est caché
      • le bit 1 retourne la propriété de mode préemptif : 1 si le process est exécuté en mode préemptif, et 0 s'il est exécuté en mode coopératif.
        Note : Cette propriété est utile uniquement dans les applications 4D 64 bits, où les process peuvent être exécutés en mode préemptif ou coopératif. Pour plus d'informations, reportez-vous à la section Process 4D préemptifs.
  • uniqueID, s'il est spécifié, retourne le numéro unique du process. En effet, chaque process se voit attribuer un numéro de process ainsi qu’un numéro unique de process par session. Ce dernier permet de différencier strictement deux process ou sessions de process. Il correspond au nombre de process ayant été lancés au cours de la session de l’application 4D.
  • origine, s'il est spécifié, retourne une valeur décrivant l’origine du process. Ce paramètre peut retourner l'une des valeurs fournies par les constantes prédéfinies suivantes (thème Type du process) :
    Constante Type Valeur Comment
    Apple event manager Entier long -7
    Backup process Entier long -19
    Cache manager Entier long -4
    Client manager process Entier long -31
    Created from execution dialog Entier long 3
    Created from menu command Entier long 2
    Design process Entier long -2
    Event manager Entier long -8
    Execute on client process Entier long -14
    Execute on server process Entier long 1
    External task Entier long -9
    Indexing process Entier long -5
    Internal 4D server process Entier long -18
    Internal timer process Entier long -25
    Log file process Entier long -20
    Main process Entier long -1
    Method editor macro process Entier long -17
    Monitor process Entier long -26
    MSC process Entier long -22
    None Entier long 0
    On exit process Entier long -16
    Other 4D process Entier long -10
    Other user process Entier long 4
    Restore Process Entier long -21
    Serial Port Manager Entier long -6
    Server interface process Entier long -15
    SQL Method execution process Entier long -24
    Web process on 4D remote Entier long -12
    Web process with no context Entier long -3
    Web server process Entier long -13
    Worker process Entier long 5 Process worker lancé par l’utilisateur

Note : Les process internes à 4D retournent une valeur négative et les process générés par l’utilisateur retournent une valeur positive.

Si le process n'existe pas, ce qui veut dire que vous n'avez pas passé un nombre inclus dans l'intervalle [1>Count tasks], PROCESS PROPERTIES laisse les valeurs des variables passées en paramètres inchangées.

L'exemple suivant retourne le nom, le statut, et le temps écoulé dans les variables vNom, vStatut, et vTempsPassé pour le process courant :

 C_TEXT(vNom//Initialiser les variables
 C_LONGINT(vStatut)
 C_LONGINT(vTempsPassé)
 PROCESS PROPERTIES(Current process;vNom;vStatut;vTempsPassé)

Voir l'exemple de la section On Exit database method.

Pour connaître la visibilité et le mode d'exécution du process courant, vous pouvez écrire :

 C_TEXT(vNom)
 C_LONGINT(vStatut)
 C_LONGINT(vDurée)
 C_LONGINT(vMode)
 C_BOOLEAN(estVisible)
 C_BOOLEAN(estPreemptif)
 PROCESS PROPERTIES(Current process;vNom;vStatut;vDurée;vMode)
 estVisible:=vMode?? 0 //vrai si visible
 estPreemptif:=vMode?? 1 //vrai si préemptif



Voir aussi  

Count tasks
Process 4D préemptifs
Process state

 
PROPRIÉTÉS 

Produit : 4D
Thème : Process
Numéro : 336

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
HISTORIQUE 

Modifié : 4D v11 SQL Release 3
Modifié : 4D v15 R5

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)