hell-student
Lieutenant
- Registriert
- Nov. 2007
- Beiträge
- 671
Hallo Zusammen,
Ich bin momentan auf der Suche nach einer Möglichkeit zwischen 2 Prozessen Daten auszutauschen. Mein Problem ist, dass Pipes ja nur bei geforkten Prozessesen (Parent/Child) funktionieren. Ein FIFO habe ich gerade implementiert und das funktioniert auch soweit, jedoch würde ich gerne nicht blockend Daten austauschen.
Mein Szenario:
Programm A rechnet was und wenn Programm B Daten in den FIFO, shared Mem oder ähnliches schaufelt, soll A aufhören, da die Berechnung auf alten Daten arbeitet und somit verworfen werden kann. Schon lange nichts mehr mit C gemacht, daher frage ich mich, ob es überhaupt geht, während dem Berechnen abzubrechen OHNE zu pollen ob Daten da sind. Quasi ein Handler für das Signal, dass neue Daten da sind. Jedoch frage ich mich, ob ich dann einfach so die Datenstrukturen/Speicher etc alles wieder so einfach freigeben werden.
Ich bin momentan auf der Suche nach einer Möglichkeit zwischen 2 Prozessen Daten auszutauschen. Mein Problem ist, dass Pipes ja nur bei geforkten Prozessesen (Parent/Child) funktionieren. Ein FIFO habe ich gerade implementiert und das funktioniert auch soweit, jedoch würde ich gerne nicht blockend Daten austauschen.
Mein Szenario:
Programm A rechnet was und wenn Programm B Daten in den FIFO, shared Mem oder ähnliches schaufelt, soll A aufhören, da die Berechnung auf alten Daten arbeitet und somit verworfen werden kann. Schon lange nichts mehr mit C gemacht, daher frage ich mich, ob es überhaupt geht, während dem Berechnen abzubrechen OHNE zu pollen ob Daten da sind. Quasi ein Handler für das Signal, dass neue Daten da sind. Jedoch frage ich mich, ob ich dann einfach so die Datenstrukturen/Speicher etc alles wieder so einfach freigeben werden.