Benachrichtigung bei Änderung von einem Fifo

i_hasser

Grand Admiral Special
Mitglied seit
06.06.2002
Beiträge
18.964
Renomée
85
Standort
IO 0x60
Hi

Hab ein Fifo, über das 2 Prozesse miteinander reden sollen. Das Problem ist, dass so ein Fifo nur recht selten neue Daten bereitstellt.
Nun würd ich ganz gern wissen, wann ein fifo neue Daten bereitstellt, das soll aber nicht als eine Abfrage in einer Schleife laufen. Also ideal wäre es, wenn ich eine Funktion bestimmen könnte die aufgerufen wird, sowie neue Daten angekommen sind.
Signale scheiden leider auch aus. Wenn das mehr als 2 Prozesse (und damit auch mehr als 2 Fifos) werden kann man ja nicht mehr zurückverfolgen, von welchem Prozess das Signal kam.
 
Signale scheiden leider auch aus. Wenn das mehr als 2 Prozesse (und damit auch mehr als 2 Fifos) werden kann man ja nicht mehr zurückverfolgen, von welchem Prozess das Signal kam.

Doch, die lassen sich unterscheiden. Dafür dient siginfo_t, ein struct, in dem auch die PID vom rufenden Prozess gespeichert wird.
 
Weil beim Eintreffen einer Message nicht die Ausführung an der aktuellen Stelle unterbrochen wird, und ein Handler ausgeführt wird (so erweckt es zumindest den Anschein).
 
Weil beim Eintreffen einer Message nicht die Ausführung an der aktuellen Stelle unterbrochen wird, und ein Handler ausgeführt wird (so erweckt es zumindest den Anschein).

Das wolltest du doch auch nicht. Dein Prozess schläft doch eh, während er auf die Message wartet. Oder habe ich dich da falsch verstanden?
 
Zurück
Oben Unten