Bei aktivem Prozess LED einschalten?

Harry
Moderator
Avatar
Geschlecht:
Herkunft: zwischen Augsburg und Ulm
Alter: 60
Beiträge: 2155
Dabei seit: 03 / 2003
Betreff:

Bei aktivem Prozess LED einschalten?

 · 
Gepostet: 17.07.2019 - 11:08 Uhr  ·  #1
Hallo Zusammen,

in mir ist da gerade eine dumme (?) Idee erwacht: Wie könnte ich immer dann, wenn ein Prozess aktiv ist, eine LED einschalten (oder einen Port auf lo/hi setzen)?
Klar kann ich am Anfang und Ende des Prozesses einen Portstatus ändern, aber wenn der Prozess mittendrin unterbrochen wird stimmt es ja nicht.

Ideen?

Gruss
Harry
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Bei aktivem Prozess LED einschalten?

 · 
Gepostet: 17.07.2019 - 18:47 Uhr  ·  #2
Hallo Harry,

das einzigst was mir hinzu einfällt ist
Procedure OnSchedulerEntry;
Procedure OnSchedulerExit;

rolf
Merlin
Administrator
Avatar
Geschlecht:
Alter: 25
Beiträge: 1474
Dabei seit: 03 / 2005
Betreff:

Re: Bei aktivem Prozess LED einschalten?

 · 
Gepostet: 18.07.2019 - 11:39 Uhr  ·  #3
Hi Harry

By its very nature a process will be interrupted. So I am guessing you want a visual indication that a process is still running normally. The way I do that sort of thing is set a flag in the process, then in the main loop copy the flag state to an LED and reset the flag (always assuming, of course that the main thread is never suspended). Then, if the process is no longer being called, or is stuck in an infinite loop, the LED is extinguished. If, on the other hand I want to check that a task is running normally, I do the same thing but set the flag at the end of the task. (Obviously the state of the flag and the LED may be in an opposite sense to each other, but you will know how to handle that).
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Bei aktivem Prozess LED einschalten?

 · 
Gepostet: 20.07.2019 - 18:50 Uhr  ·  #4
Hallo
so sollte es gehen:
Mit dem callback onSchedulerExit die aktuelle Prozess ID feststellen.
Prüfen ob es die richtige ID ist.
Wenn ja LED_ON
wenn nein LED_OFF.
Register Rettung nicht vergessen
rolf
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   79   93 · Page-Gen-Time: 0.051476s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI