Python | método os.fsync()

El módulo OS en Python proporciona funciones para interactuar con el sistema operativo. OS viene bajo los módulos de utilidad estándar de Python. Este módulo proporciona una forma portátil de usar la funcionalidad dependiente del sistema operativo.
El método os.fsync() en Python se usa para forzar la escritura del archivo asociado con el descriptor de archivo dado. 
En caso de que estemos trabajando con un objeto de archivo (digamos f) en lugar de un descriptor de archivo, entonces necesitamos usar f.flush() y luego os.fsync(f.fileno()) para asegurar que todos los búferes asociados con el El objeto de archivo f se escribe en el disco. 
 

Sintaxis: os.fsync(fd)
Parámetro:  
fd: un descriptor de archivo para el que se requiere sincronización de búfer.
Tipo de devolución: este método no devuelve ningún valor. 
 

Código #1: Uso del método  os.fsync()
 

Python3

# Python program to explain os.fsync() method
   
# importing os module
import os
 
 
# File path
path = 'file.txt'
 
# Open the file and get
# the file descriptor
# associated with
# using os.open() method
fd = os.open(path, os.O_RDWR)
 
 
# Write a bytestring
str = b"GeeksforGeeks"
 
os.write(fd, str)
 
 
# The written string is
# available in program buffer
# but it might not actually
# written to disk until
# program is closed or
# file descriptor is closed.
 
# sync. all internal buffers
# associated with the file descriptor
# with disk (force write of file)
# using os.fsync() method
os.fsync(fd)
print("Force write of file committed successfully")
 
# Close the file descriptor
os.close(fd)
Producción: 

Force write of file committed successfully

 

Código #2: Si trabaja con objetos de archivo 
 

Python3

# Python program to explain os.fsync() method
   
# importing os module
import os
 
 
# File path
path = 'file.txt'
 
# Open the file and get
# the file object
# using open() method
f = open(path, 'w')
 
 
# Write a string to
# the file object
str = "GeeksforGeeks"
f.write(str)
 
 
# Firstly, flush internal buffers
f.flush()
 
# Now, sync. all internal buffers
# associated with the file object
# with disk (force write of file)
# using os.fsync() method
os.fsync(f.fileno())
 
print("Force write of file committed successfully")
 
# Close the file object
f.close()
Producción: 

Force write of file committed successfully

 

Publicación traducida automáticamente

Artículo escrito por ihritik y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *