Python --- .flush() 强制输出缓冲区的数据(缓冲区未满)

背景:

        内存往磁盘写东西不可能实时更新,这是一种机制优化,如果频繁交互会影响性能;一般都是等到缓冲区满了才进行一次交互,但进行write操作可能会存在等待多次缓冲区填满再传输到磁盘的过程


为什么不能从CPU中写入磁盘?

        对于读取速度来说:CPU > 内存 > 磁盘

        内存作为高速存储器,可以在 CPU 与磁盘之间起到缓冲作用,避免 CPU 在等待磁盘数据时被阻塞,从而减少频繁的、低速的 I/O 操作,提高整体数据传输效率


白话:”拉卡车买菜,只运1根葱不划算,肯定得等卡车都装满“

若确切需要实时交互的场景 --- 使用.flush()

未加 flush():

        程序开始运行时,打开目标文件,发现内部什么数据都没有,原因是待写入的数据此时正在缓冲区,等待装满才传输写入

添加 flush():

        程序开始运行时,打开目标文件,发现已有数据写入,即时交互效果达成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值