Ich habe einen Prozess, der aus einer Datei liest (mit file.read()
) und einen Prozess, der in die gleiche Datei schreibt (file.write()
). Das Problem ist, dass es nicht funktioniert - ich bekomme keine Fehler, aber sie können nicht gleichzeitig arbeiten. Ich habe versucht, die Lese machen und Operationen keine blockierende schreiben und dann den Strom Spülung, wie folgt:Zwei Prozesse lesen/schreiben in die gleiche Datei Python
fcntl.fcntl(file, fcntl.F_SETFL, os.O_NONBLOCK)
file.write(msg)
file.flush()
Bin ich Mißverständnis es vollständig? Wie sollte man das Schreiben und Lesen einer Datei aus verschiedenen Prozessen erledigen?
Ja, das hat auch bei mir gut funktioniert, danke. – Andreas
Beachten Sie, dass os.O_NONBLOCK unter Windows nicht verfügbar ist. – yoyo