Hallo,
ein Prozess (a) lädt eine große Datei und nutzt diese anschließend. Ein anderer Prozess (b) möchte diese Datei ebenso nutzen, muss aber warten, bis a diese _vollständig_ runtergeladen hat.
Eine Variante:
a will datei aus netz laden
a sucht nach flag in Form einer Datei z.B. nach /var/run - findet nichts.
a schreibt ein flag
a lädt herunter.
b will datei
b sucht und findet flag
b schaut regelmäßig nach oder überwacht das Flag (wie auch immer)
a ist mit laden fertig
a löscht das flag
b merkt das und startet durch.
Eine etwas andere Variante:
a will datei aus netz laden
a sucht nach FIFO-Puffer, findet keinen
a macht fifo Puffer auf
a lädt herunter.
b will datei
b sucht und findet FIFO-Puffer
b lauscht auf ein "fertig"
a ist mit laden fertig und sendet "fertig"(*) zum FIFO
b hört das und startet durch.
(*) oder ein anderes Signal z.B. für "idle" (wichtig wenn auch Programm(e) c... gibt), "Fehler" oder "Abbruch".
weitere Möglichkeit: Prozesskommunikation oder eben das hier
Jörg Reinholz