4D v16.3

Seite Prozess

Home

 
4D v16.3
Seite Prozess

Seite Prozess  


 

 

Auf der Seite Prozess können Sie die verbrauchte CPU Zeit sehen sowie verschiedene Informationen zu den in der Anwendung erstellten Prozessen. Für Prozesse gibt es auch verschiedene Werkzeuge; davon ausgenommen sind Prozesse des Systems.
Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache im Abschnitt Einführung in Prozesse.

Hinweis zu 4D Server: Die Seite Prozess des Runtime Explorer auf einem remote 4D steuert die Prozesse dieses Clients. Die Seite Prozesse des Verwaltungsfenster von 4D Server steuert alle Prozesse auf allen Client-Rechnern, die an den Server angemeldet sind.

Die Seite zeigt für jeden Prozess folgende Informationen:

  • Prozesstyp (Icon)
  • Prozessnummer (Prozess ID, identisch mit der Prozessnummer). Sie verwenden diese Prozessnummer zum Identifizieren eines spezifischen Prozesses in Befehlen und Funktionen).
  • Prozessname
  • Aktueller Status des Prozesses
  • Ausführungszeit in Sekunden, die der Prozess seit dem Starten beansprucht hat.
  • Vom Prozess verbrauchte CPU Zeit in Prozent.

Jedem Prozess ist ein Icon zugeordnet; Farbe und Form kennzeichnen die Art des Prozesses

Anwendungsserver
SQL Server
DB4D Server (Datenbank-Engine)
Web Server
SOAP Server
Geschützter 4D Client Prozess (Prozess für Entwicklungsumgebung eines Client)
4D Client Hauptprozess (Hauptprozess eines Client), Spiegelprozess eines 4D Client auf dem Server
4D Client Basisprozess (Prozess existiert parallel zu einem 4D Client Prozess; preemptive Prozess zur Kontrolle des jeweiligen 4D Client Hauptprozesses)
Reserve Prozess (vorheriger oder zukünftiger 4D Client Prozess)
SQL Server Worker Prozess
HTTP Server Worker Prozess
4D Client Prozess (auf einem Client gestarteter Prozess)
Serverprozedur (von einem angemeldeten Client gestarteter Prozess auf dem Server)
Web Methode (z.B. über 4DACTION gestartet)
SOAP Methode (über einen Web Dienst gestartet)
Web Methode (preemptive)
Logger
TCP Connection Listener
TCP Session Manager
Anderer Prozess
Worker Prozess (kooperativ)
Serverprozedur (preemptive Prozess)
Worker Prozess (preemptive)

Hinweis: Jeder 4D Client Hauptprozess und sein „Zwilling“ 4D Client Basisprozess werden zusammengelegt, wenn die Option Prozesse gruppiert anzeigen markiert ist.

Jeder Prozess hat eine einmalige Nummer (in Klammern), die der Reihenfolge seiner Erstellung während der Arbeitssitzung entspricht. Beim Starten der Anwendung werden die ersten Nummern den automatisch von 4D angelegten Prozessen zugewiesen. Ihre Nummern variieren je nach den beim Start ausgeführten Servern.

Starten Sie einen eigenen Prozess, wird er unter den Standardprozessen als nächster Prozess aufgelistet oder nimmt den Platz eines abgebrochenen Prozesses ein. Zum Beispiel werden Prozess 7 und 8 ausgeführt. Wird Prozess 7 abgebrochen, wird der als nächster startende Prozess Prozess 7.

Hinweis: Prozesse werden automatisch nach der Ausführung abgebrochen. Sie können einen Prozess im Runtime Explorer abbrechen, bevor er abgeschlossen wird. Weitere Informationen dazu finden Sie im Abschnitt Prozess abbrechen.

Wenn Sie einen neuen Prozess mit der 4D Funktion New process oder Execute on server starten, können Sie seinen Namen als Parameter in der Funktion festlegen. Dieser Name erscheint als Prozessname in der Liste der Prozesse.

Legen Sie keinen Prozessnamen mit einer Funktion fest, weist 4D dem Prozess automatisch einen Standardnamen zu. Dabei gilt folgendes:

  • Prozesse, die mit einem Menübefehl gestartet werden, erhalten den Standardnamen "ML_Prozessnummer". Wird zum Beispiel der Prozess Nummer 7 über Menübefehl gestartet, lautet sein Name "ML_7".
  • Prozesse, die durch Ausführen einer Methode gestartet werden, erhalten den Namen "P_Prozessnummer". Wird zum Beispiel der Prozess Nummer 5 vom Programm gestartet, erhält der Prozess den Namen "P_5".
  • Prozesse, die mit einer Funktion gestartet, aber nicht explizit benannt werden: Starten Sie einen Prozess über eine Methode, geben den Namen aber nicht als Parameter in der 4D Funktion New process an, bleibt der Prozessname leer.

Hinweis für 4D Server: Beginnt der Name eines Prozesses mit einem Dollarzeichen ($), ist es ein lokaler Prozess, der keinen Zugriff auf Tabellen oder auf 4D Server hat (siehe Globale und lokale Prozesse).

Der Status eines Prozesses ist der aktuelle Status der Ausführung, d.h. was der Prozess momentan macht.

Es gibt folgende Statusmöglichkeiten im Fenster Runtime Explorer:

  • Ausführung: Der Prozess wird momentan ausgeführt.
  • Schläft: Der Prozess ruht für eine bestimmte Zeit. Während der Zeit, in der der Prozess ruht, beansprucht er keine Prozesszeit.
  • Wartet auf Ereignis: Der Prozess wartet auf eine Aktion des Benutzers, wie z.B. das Klicken auf eine Schaltfläche oder das Auswählen eines Menüeintrags.
  • Wartet auf Eingabe/Ausgabe: Der Prozess wartet auf eine Eingabe oder Ausgabe. Ein Prozess kann zum Beispiel warten, dass eine Gruppe von Datensätzen auf der Festplatte aktualisiert wird.
  • Wartet auf Semaphore: Der Prozess wartet darauf, dass interne Prozesse die Ausführung von 4D Datenbankaufgaben abschließen.
  • Gestoppt: Der Prozess wird angehalten, bis Sie ihn anweisen, mit der Ausführung fortzufahren. Während dieser Zeit beansprucht er keine Prozesszeit. Weitere Informationen finden Sie im Abschnitt Prozess anhalten und fortsetzen.
  • Abgebrochen: Der Prozess wurde abgebrochen. In diesem Fall gibt 4D gesperrte Datensätze frei, löscht Transaktionen, die durch den Prozess geöffnet wurden, aber noch nicht übernommen oder gelöscht wurden, und gibt die aktuelle Auswahl und den aktuellen Datensatz frei. Prozesse werden nach der Ausführung automatisch abgebrochen. Sie können einen Prozess auch über den Runtime Explorer vor dem Abschließen abbrechen. Weitere Informationen dazu finden Sie im Abschnitt Prozess abbrechen.
  • Ausgeblendetes modales Fenster: Ein Prozess, der ein modales Dialogfenster angezeigt hat, wurde ausgeblendet, so dass der Benutzer den Dialog nicht mehr sehen kann. Der Prozess wartet in diesem Status, bis der Dialog erneut angezeigt wird.

Der Runtime Explorer zeigt die Ausführungszeit für jeden Prozess. Beim Verwalten der Prozesse verteilt 4D die Arbeitszeit zwischen den bestehenden Prozessen, so dass keiner der Prozesse kontinuierlich ausgeführt wird. Somit ist die Prozesszeit die gesamte Ausführungszeit, die ein Prozess seit Beginn in Sekunden beansprucht hat, und nicht die Gesamtzeit, die seit Starten der Prozessausführung vergangen ist, da die Ausführung zwischen allen offenen Prozessen verteilt wird.

Die Zeitspanne, in welcher die Daten aktualisiert werden sollen, lässt sich über ein Kontextmenü einstellen (rechter Mausklick auf eine Zeile).

Je größer die Aktualisierungszeit ist, desto mehr CPU Zeit verbraucht der Prozess des Runtime Explorer.

Mit dem Runtime Explorer können Sie die Ausführung der Prozesse durch Anhalten, Fortsetzen oder Abbrechen steuern. Sie können auch die Ausführung des Prozesses im Debug-Modus festlegen und die einzelnen Fenster jederzeit ein- oder ausblenden. Diese Operationen werden ausführlich in den folgenden Abschnitten behandelt.

Über die Schaltflächen unter der Liste der Prozesse können Sie einen Prozess ausblenden, einblenden oder nach vorne bringen. Sie können auch mehrere Prozesse gleichzeitig auswählen: (Umschalttaste+Klick für eine zusammenhängende Auswahl oder Befehl/Strg-Taste+Klick für eine nicht-zusammenhängende Auswahl).

Hinweis: Sie können einen Prozess auch für eine bestimmte Zeit verzögern. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache unter dem 4D Befehl DELAY PROCESS.

Sie können die Ausführung eines Prozesses vorübergehend aussetzen, indem Sie ihn anhalten. Sie können einen Prozess anhalten, um einem anderen Prozess mehr Ausführungszeit einzuräumen oder ein Ereignis zuzulassen, mit dem der Prozess auftritt.

Zum Beispiel können Sie einen Prozess starten, der eine Auswahl von Datensätzen druckt. Sie stellen aber dann fest, dass Sie die Daten in einem der Datensätze ändern wollen. Also halten Sie den Prozess an, nehmen Ihre Änderungen vor und setzen anschließend Ihren Prozess, das Drucken der Datensätze, fort.

  • Um einen Prozess anzuhalten, markieren Sie ihn und klicken am unteren Rand auf die Schaltfläche Pause . Der Status des Prozesses in der Prozessliste ändert sich automatisch zu "Angehalten". Der Prozess bleibt unterbrochen, bis Sie ihn anweisen, mit der Ausführung fortzufahren.
  • Um einen Prozess fortzusetzen, markieren Sie ihn und klicken am unteren Rand auf die Schaltfläche Ausführen . Der Status des Prozesses kehrt zu dem Status zurück, den er vor dem Anhalten hatte. Wurde er zum Beispiel gerade ausgeführt, beginnt der Prozess wieder mit der Ausführung. Hatte er auf ein Ereignis gewartet, beginnt er wieder mit dem Warten auf ein Ereignis.

Ein Prozess wird nach seiner Ausführung automatisch abgebrochen. Manchmal müssen Sie jedoch einen Prozess schon vorher abbrechen, um Fehler zu beheben. Ein Prozess sollte nur zu diesem Zweck abgebrochen werden.

Wenn ein Prozess abgebrochen wird, gibt 4D gesperrte Datensätze frei, löscht Transaktionen, die durch den Prozess geöffnet, aber noch nicht übernommen oder gelöscht wurden, und gibt auch die aktuelle Auswahl und den aktuellen Datensatz frei.

Um einen Prozess abzubrechen, markieren Sie ihn und klicken am unteren Rand auf die Schaltfläche Abbrechen . Sein Status im Runtime Explorer ändert sich automatisch zu "Abgebrochen".

Sie können die Fehler in einem Prozess beheben, wenn Sie dessen Ausführung im Debugger überwachen.

Um einen Prozess zu debuggen, markieren Sie ihn und klicken am unteren Rand auf die Schaltfläche Schritt .

Der Debugger erscheint, wenn der Prozess ausgeführt wird. Hier können Sie Fehler im Prozess beheben, indem Sie seine Ausführung Schritt für Schritt nachvollziehen und Ausdrücke wie Datenfeldwerte und Variablen überprüfen, die in der Methode verwendet werden.
Hat der Prozess den Status „schläft“ oder „Pause“, speichert 4D die Anfrage und zeigt den Debugger, wenn der Prozess wieder aktiviert wird. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache im Kapitel Debugging.

Prozesse, die 4D intern erstellt und verwaltet, können Sie nicht debuggen.

Sie können einen Prozess in der Anwendungsumgebung ausblenden. Dann sind Fenster oder Menüs, die durch den Prozess erzeugt werden, für den Benutzer unsichtbar, während der Prozess ausgeführt wird. 

Das Ausblenden von Prozessen ist sinnvoll bei Operationen, in denen Sie ein Fenster öffnen, das Sie später schließen wollen. Statt den Prozess abzubrechen, um das Fenster zu schließen, können Sie das Fenster für den Benutzer unsichtbar machen, indem Sie den Prozess ausblenden, der es geöffnet hat.

Um einen Prozess auszublenden, markieren Sie ihn und klicken am unteren Rand auf die Schaltfläche Ausblenden:

Der Prozess ist jetzt in der Anwendungsumgebung ausgeblendet, wird aber weiter ausgeführt. Sie können einen ausgeblendeten Prozess jederzeit wieder einblenden.

Um einen Prozess wieder anzuzeigen, klicken Sie am unteren Rand auf die Schaltfläche Einblenden . Der Prozess erscheint wieder in der Anwendungsumgebung.

Sie können ein Prozessfenster zum vordersten Fenster machen, wenn Sie dessen Prozess nach vorne bringen. Ist z.B. der Anwendungsprozess nach vorne gebracht, ist die Anwendungsumgebung auf dem Bildschirm vorne.

Sie können jeden Benutzerprozess nach vorne bringen. Haben Sie ein Fenster für einen Prozess erstellt, wird dieses Fenster zum vordersten Fenster auf dem Bildschirm. Ist eine Menüleiste mit dem Fenster verknüpft, bringt 4D diese nach vorne und die dazugehörigen Menüs sind jetzt die aktuellen Menüs.

Um einen Prozess nach vorne zu bringen, markieren Sie ihn und klicken am unteren Rand auf die Schaltfläche Nach vorne bringen: .

Alle Fenster, die mit dem Prozess verknüpft sind, werden auf dem Bildschirm nach vorne gebracht. Außerdem erscheint die Menüleiste des vordersten Prozessfensters.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Runtime Explorer

 
GESCHICHTE 

 
ARTIKELVERWENDUNG

4D Designmodus ( 4D v16)
4D Designmodus ( 4D v16.1)
4D Designmodus ( 4D v16.3)