var F: TextFile;
begin //写文件
…………
AssignFile(F, ResultFile);
if not FileExists(ResultFile) then
Rewrite(F)
else
Append(F);
writeln(F, FileName);
CloseFile(F);
…………
endbegin //读文件
AssignFile(F, _Name);
FileMode := 0;
Reset(F);
while not Eof(F) do
Readln(F, s);
end这两段程序操作的都是同一个文件,有可能正在读时,又开始写,或者正在写时又开始读,他们之间会不会发生冲突,假如发生了冲突要怎么解决?其中reset好像是以独占方式打开文件,他的filemode:=2,我改成了0(共享方式),但就不知使用append打开文件时他会不会关闭该文件的所有指针?假如要关闭,有没有方法使append可以写,而其他地方同时可以读的方式来打开?
begin //写文件
…………
AssignFile(F, ResultFile);
if not FileExists(ResultFile) then
Rewrite(F)
else
Append(F);
writeln(F, FileName);
CloseFile(F);
…………
endbegin //读文件
AssignFile(F, _Name);
FileMode := 0;
Reset(F);
while not Eof(F) do
Readln(F, s);
end这两段程序操作的都是同一个文件,有可能正在读时,又开始写,或者正在写时又开始读,他们之间会不会发生冲突,假如发生了冲突要怎么解决?其中reset好像是以独占方式打开文件,他的filemode:=2,我改成了0(共享方式),但就不知使用append打开文件时他会不会关闭该文件的所有指针?假如要关闭,有没有方法使append可以写,而其他地方同时可以读的方式来打开?
解决方案 »
- 求TatukGIS8.0以上版本的源代码
- delphi6.0可以操作Access2003版的数据库吗?
- 请教一个问题,新手,勿笑
- 如何动态在FastReport上创建Memo?
- 如何实现pointer类型的数据写到数组中?
- 关于delphi与sql server连接的问题,谢谢!
- 大虾帮看下----------调用WORD的拼写检查代码在2010不能用了?
- 我想改学语言不知delphi.vc .c++ builder哪个好
- help me!我等得好辛苦!!!图片传送?!?!?!? up有分!!!!
- DateTimePicker的时间在query1(sql)语句中怎么写?
- 求救!!排课系统怎么实现呀?用的是什么算法?
- [心路故事]我花了18年时间才能和你坐在一起喝咖啡(转)
就是TCriticalSectionhttp://lysoft.7u7.net
TMultiReadExclusiveWriteSynchronizer