Die Verwaltung von Prozessen und Sitzungen ist für die Optimierung und Überwachung Ihrer 4D Anwendungen unerlässlich. Mit Hilfe verschiedener Befehle können Sie wichtige Informationen über diese Elemente einfach bearbeiten und abrufen.
Wir freuen uns, mit 4D 20 R7 eine Reihe von Verbesserungen ankündigen zu können, die diese Funktionen noch zugänglicher und effektiver machen. Diese neuen Features sollen nicht nur Ihre Arbeit vereinfachen, sondern auch die Leistung Ihres Codes steigern. Zu den Verbesserungen gehören:
- Abrufen der Prozessinformationen in einem Objekt, um die Manipulation der Eigenschaften zu erleichtern,
- Ermöglichung des direkten Zugriffs auf Sitzungsinformationen über eine Sitzungs-ID zur einfacheren Verwaltung,
- Erleichterung des Abrufs einer Prozessnummer direkt aus der ID,
- Zugriff auf das Erstellungsdatum eines Prozesses
- Optimierte Filterung der Ergebnisse, die von dem Process activity Befehls zurückgegebenen Ergebnisse, um alle Prozesse in einer Sitzung zu erhalten.
Finden Sie heraus, wie diese Updates Ihre Entwicklungserfahrung verändern und die Effizienz Ihrer Anwendungen verbessern können!
HDI: Prozesseigenschaften, Sitzungseigenschaften und Prozessaktivität in Aktion
Abrufen von Informationen zu einem Prozess oder einer Sitzung
Neuer Befehl Prozessinfo
Der neue Process info Befehl gibt ein Objekt zurück. Der Vorteil dieser Syntax liegt in der Möglichkeit, die Informationen in einem Objekt abzurufen, wodurch sie einfacher zu handhaben sind als bei der Verwendung mehrerer Variablen. Der Befehl _O_PROCESS PROPERTIES ist daher veraltet.
var $process : Object
$process :=Process info($processNumber)
Der Befehl Process info Befehl gibt eine neue Eigenschaft zurück, creationDateTime.. Mit dieser Eigenschaft können Sie herausfinden, wann ein Prozess erstellt wurde.
Beispielhafte Ausgabe:
{
"Nummer": 4,
"name": "Anwendungsprozess",
"sessionID": "3C81A8D7AFE64C2E9CCFFCDC35DC52F5",
"ID": 4,
"sichtbar": wahr,
"type": -18,
"state": 0,
"creationDateTime": "2024-09-22T12:46:39.243Z",
"preemptiv": false,
"systemID": "123145476132864",
"cpuUsage": 0,
"cpuTime": 0.006769
}
Zum Beispiel, um zu wissen, ob mein Prozess präemptiv ist:
var $preemptive : Boolean
$preemptive :=Process info($processNumber).preemptive
Neuer Befehl Session info
Der neue Session info Befehl ermöglicht es Ihnen, die Informationen einer Sitzung anhand ihrer SessionID abzurufen. Sie konnten diese Informationen bereits mit dem Befehl Process activity abrufen. Der Vorteil dieses neuen Befehls ist, dass er ein einfaches Objekt zurückgibt, was Zeit und Leistung spart.
var $session Object
$session :=Session info($sessionID)
$session :=Session info(Process info($processNumber).sessionID)
Beispielhafte Ausgabe:
{ "ID": "3C81A8D7AFE64C2E9CCFFCDC35DC52F5", "userName": "Designer", "machineName": "Mein Computer", "systemUserName": "John Doe", "IPAdresse": "localhost", "hostType": "mac", "Typ": "remote", "status": "aktiv", "creationDateTime": "2024-09-10T09:55:54Z", "persistentID": "8FFDAE519F1F4DCDB81E8E8DB00AD101" }
Abrufen der Prozessnummer aus der Prozess-ID
Der Befehl Process number Befehl wurde aktualisiert. Es ist nun möglich, die Prozess-ID zu übergeben, um die Prozessnummer direkt abzurufen, zusätzlich zu der vorherigen Methode der Verwendung des Prozessnamens.
var $processNumber : Integer
var $processName : Text
var $processID : Integer
// From process name
$processNumber :=Process number($processName)
// From process ID
$processNumber :=Process number($processID)
Verbesserung für den Befehl Prozessaktivität
Prozesse nach Sitzung filtern
Der Befehl Process activity Befehl können Sie die Liste der Prozesse und Sitzungen abrufen. Wenn Sie die Option Processes only oder Sessions only übergeben, rufen Sie entweder die Liste der Prozesse oder die Liste der Sitzungen ab. Jetztkönnen Sie Ihre Ergebnisse noch effizienter filtern. Geben Sie einfach eine Sitzungs-ID an, um die Liste der mit der Sitzung verknüpften Prozesse abzurufen.
Hier sind die verschiedenen möglichen Kombinationen:
// return all sessions and processes
$o:=Process activity()
// return all processes
$o :=Process activity(Processes only)
// return all sessions
$o :=Process activity(Sessions only)
// return the session passed in parameter and all linked processes
$o :=Process activity($sessionID)
// return all processes linked to the session passed in parameter
$o :=Process activity($sessionID; Processes only)
// return the session passed in parameter
$o :=Process activity($sessionID; Sessions only)
Abrufen des Erstellungsdatums eines Prozesses
Die neue Eigenschaft creationDateTime wurde auch dem Process-Objekt hinzugefügt, das von dem Process activity Befehl zurückgegeben wird. So können Sie ganz einfach das Erstellungsdatum eines beliebigen Prozesses abrufen.
Beispielhafte Ausgabe:
{
"Prozesse": [
{
"Name": "Anwendungsprozess",
"sessionID": "3C81A8D7AFE64C2E9CCFFCDC35DC52F5",
"number": 4,
"ID": 4,
"sichtbar": wahr,
"systemID": "123145476132864",
"type": -18,
"state": 0,
"cpuUsage": 0,
"cpuTime": 0.006769,
"creationDateTime": "2024-09-22T12:46:39.324Z",
"preemptive": false
}
]
}
Tiefer eintauchen
Weitere Einzelheiten zu diesen spannenden Änderungen finden Sie in der aktualisierten Dokumentation zu diesen Befehlen. Wir können es kaum erwarten, Ihre Meinung zu hören. Beteiligen Sie sich an der Diskussion in unserem Forum!