Immer wenn ich über Kinder Prozesse in C gelesen von gabel() gelaicht, wartet das Elternteil auf die Kinder zu beenden. Ich stehe jedoch vor einem anderen Problem: Ich möchte zwei Kinder spawnen und sie dann warten lassen, bis die Eltern ihnen Arbeit geben.Warten Kinder Prozesse
f.example: Im Client:
fork() two children
in parent, connect to a server
server returns some work to do
parents hands work over to children
Wie kann ich das erreichen? Ich frage nicht nach einem großen Teil des Codes, nur ein wenig Anleitung und vielleicht etwas Code zu erklären.
Eine Pipe im Elternteil kann über Pipe mit Kind kommunizieren (2) –
Sie brauchen eine Möglichkeit, mit dem Elternteil zu kommunizieren. Dies wird als Interprozesskommunikation (IPC) bezeichnet. Unter UNIX ist dies für eine direkt gegabelte Chuld normalerweise eine Pipe. –
Lassen Sie das Kind eine Nachricht aus einer guten alten Pipe oder einer Nachrichtenwarteschlange lesen, und es wird in den Ruhezustand versetzt, bis eine Nachricht verfügbar wird. – PSkocik