foxpro的问题(50分)

  • 主题发起人 主题发起人 zhuifeng
  • 开始时间 开始时间
Z

zhuifeng

Unregistered / Unconfirmed
GUEST, unregistred user!
深交所每天下午自动更新几个文件sjstj.dbf和sjsgf.dbf。在更新这些文件的时候,别的用户
对这个文件既不能写也不能读,现在需要写个程序,判断这几个文件是否已更新,如果更新过的
话,就从新的文件中提取需要的数据,问题是:怎样判断这几个文件是否被深交所加了读锁和写所?
 
如果你是用Foxpro编程的话,可以用lock,如果能lock,证明表没有被锁。
因为别人lock了以后,其他人是不能再lock的。
锁后其他用户是只读的。据我的foxpro经验,
想让其他用户连读都不能好像是不可能的,除非你不允许他连接
 
是不能读,当读的时候抱错,说不是一个表,当深交所更新完成后就可以读了。
 
也不完全。我记得lock()是记录锁,Flock()才是文件锁。用lock()你只能锁定相应记录,但能更新其它记录的字段。
你可以放一个循环,等待其它用户的解锁,超时再报错。我以前用Foxpro做过一个很大的局网系统,并发使用只有程充容错写得好,没有任何问题。
 
在FOXPRO中,DBF文件就算是锁定了还是可以读的。不知是现在的VFP7.0作了更改或
是使用了其它工具?
 
深交所在更新这几个文件时,这几个文件显示的字节数是0k,在更新结束后显示的是正确的字节数。
 
后退
顶部