当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python os.fsync()用法及代码示例


Python中的OS模块提供了与操作系统进行交互的函数。操作系统属于Python的标准实用程序模块。该模块提供了使用依赖于操作系统的函数的便携式方法。

os.fsync()Python中的方法用于强制写入与给定文件描述符关联的文件。

如果我们正在使用文件对象(例如f)而不是文件描述符,那么我们需要使用f.flush(),然后使用os.fsync(f.fileno())以确保与文件对象f相关联的所有缓冲区都是写入磁盘。


用法: os.fsync(fd)

参数:
fd:需要缓冲区同步的文件描述符。

返回类型:此方法不返回任何值。

代码1:用于os.fsync()方法

# 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)
输出:
Force write of file committed successfully

代码2:如果使用文件对象

# 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 commited successfully") 
  
# Close the file object  
f.close()
输出:
Force write of file committed successfully


相关用法


注:本文由纯净天空筛选整理自ihritik大神的英文原创作品 Python | os.fsync() method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。