| 发表于:2007-09-15 03:19:17 楼主 |
环境:vs2005, .net2.0, c#,windowsxp 在写一个桌面应用程序时,里面有如下代码将日志写入xml文档. foreach(string content in contentscollection) { run() } //run()用于固定时间间隔触发读取内容并写日志函数 void run() { timer = new timer(new timercallback(startread), autoevent, 0, readinterval); } //读取内容并写入日志文档 void startread(object sender) { //读取内容部分省略 //下面将读取的内容写入日志文档 xmltextwriter xtw = new xmltextwriter(logdocument, null); xtw.formatting = formatting.indented; mydoc.writecontentto(xtw); xtw.close(); } .... } 问题:当content数量为1时,没有问题,当content的数量大于1时,正常运行也没问题.但是如果此时操作系统待机,再重新唤醒时,就会出现logdocument无法访问的情况,提示为: "文件正由另一进程使用,因此该进程无法访问该文件 ". 我不明白的是,此时到底是谁在访问这个文件,它和待机有什么关系? 敬请各位帮忙. |
|
|
|
|