Caching fread是否使用预取?如果是,它如何处理一致性问题?

Caching fread是否使用预取?如果是,它如何处理一致性问题?,caching,fread,consistency,prefetch,Caching,Fread,Consistency,Prefetch,我对弗雷德的行为有个问题。弗雷德来自斯迪奥 我做了一个实验,如果我读取(2KB),那么strace日志显示存在一个read()=4KB。因此,这意味着fread使用了“预取”,或者至少四舍五入到4KB。但是,如果fread在库级别使用预取和缓存数据,那么在程序使用“预取”数据之前,它可能会被其他程序修改,并且fread可能不知道此修改,这将导致不一致问题 那么,fread到底做什么?fread是否具有取整、预取功能,以及fread是否在库级缓存?如果使用了预取,它如何处理不一致性问题 谢谢

我对弗雷德的行为有个问题。弗雷德来自斯迪奥

我做了一个实验,如果我读取(2KB),那么strace日志显示存在一个read()=4KB。因此,这意味着fread使用了“预取”,或者至少四舍五入到4KB。但是,如果fread在库级别使用预取和缓存数据,那么在程序使用“预取”数据之前,它可能会被其他程序修改,并且fread可能不知道此修改,这将导致不一致问题

那么,fread到底做什么?fread是否具有取整、预取功能,以及fread是否在库级缓存?如果使用了预取,它如何处理不一致性问题

谢谢