robo_wolf,

ja, ja die Lese- und Schreibzugriffe erfolgen völlig unsynchronisiert. D.h. während ein Prozess Daten in die FIFO einschreibt kann ein anderer schon dabei sein, die Daten der Botschaft schon wieder auszulesen .

Das ist wie beim Fliessband an der Supermarktkasse: Die FIFO ist das Fliessband, der Kunde legt die Daten darauf und an der Kasse werden sie heruntergenommen. Je nachdem wer von den beiden schneller ist, kommt's zum Stau und Ärger beim Kunden oder zu gelangweilten Blicken von der Kasse . Wichtig ist aber, dass jeder der beiden mit der ihm eigenen Arbeitsgeschwindigkeit werkeln kann, ohne dass der Gesamtprozess abstürzt. Genau das braucht man, wenn's z.B. darum geht, Geräte miteinander zu verbinden, die mit unterschiedlicher Geschwindigkeit Daten erzeugen bzw. verarbeiten.

Der Algorithmus, den ich in dem .pdf beschreibe, erledigt auch die Situtation, die Dir 'nicht so easy' vorkommt, mit Leichtigkeit (und ein paar "cli"s ), obwohl er so (verhältnismässig) einfach ist.

Ciao,

mare_crisium