读取实时更新的dbf
本地程序需要读取dbf文件内容,而该dbf文件被ftp工具实时从远程服务器上面下载下来直接覆盖。有可能我正在读取dbf文件内容的时候,文件被覆盖了。这样,可能会导致数据错误。
不知道大家有什么好的解决办法?
[解决办法]
建议先将数据库拷贝到一个临时目录然后再读
[解决办法]
首先优化代码,尽可能缩短读取时间.
1、读记录前锁定dbf文件,使其他进程无法修改该dbf文件,读后解锁。
2、程序中加一个线程, 用ReadDirectoryChangeW监测dbf文件是否被修改.若是,则通知主线程更新rs