首页 新闻 搜索 专区 学院

保存配置文件提示被占用~~~各位大大帮帮忙~~~~

0
悬赏园豆:20 [已解决问题] 解决于 2012-06-12 16:05

載入組態檔時發生錯誤: 由於另一個處理序正在使用檔案 'C:\Documents and Settings\Admin\Local Settings\Application Data\ShenZhen_Promise-Tech_CO\SmsFox.exe_Url_2asihpm34rzbkgg2lhpnfaqxgterfsak\3.5.1.0\user.config',所以無法存取該檔案。

 

保存配置文件时提示错误,程序有多个配置文件,并且多个线程对某个配置文件进行写操作,

 MutexObj.WaitOne();                              
bol_IsOk = IsReged(reg);
MutexObj.ReleaseMutex();

上面是线程操作的方法

……IsReged(Reg reg)

{……

 reg.degree = degree;
 reg.Save();……

}

 

请各位帮忙看下  先谢谢了

冰封一夏的主页 冰封一夏 | 初学一级 | 园豆:13
提问于:2012-06-06 10:23
< >
分享
最佳答案
0

试试下面的代码:

Monitor.Enter(reg); 
bol_IsOk = IsReged(reg);
Monitor.Exit(reg);
收获园豆:20
dudu | 高人七级 |园豆:38820 | 2012-06-06 11:16
其他回答(1)
0

保存配置文件时提示错误,程序有多个配置文件,并且多个线程对某个配置文件进行写操作,

线程会争用条件。

可以用锁,锁定。保证每次只能一个线程访问,关键的对象。

悟行 | 园豆:12346 (专家六级) | 2012-06-06 10:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册