En programación distribuida, multiproceso, etc ... se da muchas veces la circunstancia de que varios

hilos/procesos requieran escribir en un mismo fichero al mismo tiempo.
En Linux

(y otros S.O. que cumplan posix) contamos con llamadas fcntl que nos proporcionan funcionalidades para efectuar un Lock a fichero.
import
fcntl
# Abrimos el fichero que necesita acceso concurrente
fp = open
('fichero_acceso_concurrente', 'w')
# Efectuamos el Lock
fcntl.flock(fp.fileno(), fcntl.LOCK_EX)
# Ahora podemos escribir sin miedo
fp.writelines('datos
a escribir')
# Desactivamos el Lock
fcntl.flock(fp.fileno(), fcntl.LOCK_UN)
# Cerramos el fichero para guardar los cambios
fp.close()
Lenguaje:
python