Es existieren zwei ausführbare C-Programme A und B. A und B kommunizieren miteinander über einen Socket.
B kann unabhängig oder über A gestartet werden.
-
Wenn zuerst B und dann A gestartet wird, starten A und B ordnungsgemäß und ohne Probleme. Auch wenn A neu gestartet wird, gibt es keine Probleme.
-
Wenn B durch A gestartet wird, dann starten A und B richtig. Aber hier ist der Kommunikationsanschluss sowohl an A als auch an B gebunden. Wenn A neu gestartet wird, kann A nicht gestartet werden.
Da B durch A gestartet wird, ist Prozess A der Elternteil von Prozess B.
Gibt es also eine Möglichkeit, den Prozess B unabhängig von Prozess A zu starten?
Wir haben versucht, fork zu verwenden, aber mit fork werden beim Versuch, die Exe zu starten, zwei Prozesse anstelle von einem gestartet.