Python 3 - os.fsync() 方法

  • 描述

    方法fsync()强制将文件描述符为 fd 的文件写入磁盘。如果您从 Python 文件对象 f 开始,首先执行 f.flush(),然后执行 os.fsync(f.fileno()),以确保与 f 关联的所有内部缓冲区都写入磁盘。
  • 句法

    以下是语法fsync()方法 -
    
    os.fsync(fd)
    
  • 参数

    fd− 这是需要缓冲区同步的文件描述符。
  • 返回值

    此方法不返回任何值。
  • 例子

    以下示例显示了 fsync() 方法的用法。
    
    #!/usr/bin/python3
    import os, sys
    # Open a file
    fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
    # Write one string
    line = "this is test"
    b = line.encode()
    os.write(fd, b)
    # Now you can use fsync() method.
    # Infact here you would not be able to see its effect.
    os.fsync(fd)
    # Now read this file from the beginning
    os.lseek(fd, 0, 0)
    line = os.read(fd, 100)
    b = line.decode()
    print ("Read String is : ", b)
    # Close opened file
    os.close( fd )
    print ("Closed the file successfully!!")
    
  • 结果

    当我们运行上面的程序时,它会产生以下结果 -
    
    Read String is :  this is test
    Closed the file successfully!!