多谢回复,这样的话,就是说只要我写完,他就可以读了。
我之前没把我的应用讲清楚,是这样的:
(1)对方并不在本地开打和读写我的文件,他会用把我写好的文件传到服务器上。这种情况,是不是我也可以在我close之后,立刻通知他,他就可以立刻上传了?
(2)他上传我产生的数据,是不是也得先把数据弄到缓存里才能上传,而我写的数据已经在缓存里了,这个缓存对于我的程序和他的程序都是透明可以访问的,所以我一close,他就可以上传了?
(3)我有的时候需要写好几个文件,然后再通知他。我发现有时我写完最后一个文件都close了,但之前还有几个文件,名字都没出现在硬盘上。得过一阵子文件才会开始出现在硬盘上。这种情况我也可以写完最后一个文件并且close之后(这时还有几个文件没出现在硬盘上),就可以通知他了吗?
【 在 yangtou 的大作中提到: 】
: 这个肯定是你的程序的问题。
: 对于写入文件,如果有缓存,读的一方程序同样也能看到缓存。数据在缓存里,读方就直接从缓存处理数据;数据在磁盘没有缓存,读方就要先让os把数据加载到缓存,再在缓存里面处理。写方的数据有没有存到磁盘上根本不影响读方的行为。
: 至于读写同步,写入方需要通知读取一方写入多少数据了,可以用各种加锁,ipc或者消息队列之类进行同步。
: ...................
--
FROM 223.104.40.*