死锁难题 他们出错的原因是在同一时间点同时对XML文件操作,一个读,一个写,所以才会出错。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 死锁是说的多线程,这个属于进程之间协调在你实例化的时候操作xml这个类的对象时,要在构造函数里加上this.KillProcess();在dispose的时候也要加上this.KillProcess();下面的例子是操作EXCEL的 /// <summary> /// 用Process方法结束Excel进程 /// </summary> public void KillExcelProcess() { Process[] myProcesses; DateTime startTime; myProcesses = Process.GetProcessesByName("EXCEL"); //得不到Excel进程ID,判断进程启动时间 foreach (Process myProcess in myProcesses) { startTime = myProcess.StartTime; if (startTime > beforeTime && startTime < afterTime) { myProcess.Kill(); } } } 楼主不是知道要使用lock了吗 那就用起来在对xml文件进行操作时 把对象lock起来 然后进行操作 lock(xml文件对象){ //对xml文件的操作 //最后关闭资源} 我的是两个系统,一个系统生成XML,另一个系统通过远程连接进行读取的,所以出现了同一时间点又读又写的情况 本人最近在用多线程做个项目,有点想法可以跟你分享。如果你访问XML的多个线程是同一个方法的话,用lock,如果线程间用的是不同的方法,他们互斥访问XML用Mutex类 网站发布后JS无效了! 急急急!winform网页自动登录 文件正由另一个进程访问,因此无法访问改文件!! 调用OWC Spreadsheet控件的get_value方法后,内存不能释放 不是很理解“接口”,请高手指点一下。 就一行代码的程序??? 小弟因项目需要,从.NET转移到JAVA了,问一些类似博客园的学习站点。 如何在visual stdio c#里写一个发微博或者其它通信的功能。告诉我方向也行。 C#网页搜索和文件下载 文字问题~~! 光标跳转 asp.net 获取天气预报
在你实例化的时候操作xml这个类的对象时,要在构造函数里加上this.KillProcess();
在dispose的时候也要加上this.KillProcess();
下面的例子是操作EXCEL的 /// <summary>
/// 用Process方法结束Excel进程
/// </summary>
public void KillExcelProcess()
{
Process[] myProcesses;
DateTime startTime;
myProcesses = Process.GetProcessesByName("EXCEL"); //得不到Excel进程ID,判断进程启动时间
foreach (Process myProcess in myProcesses)
{
startTime = myProcess.StartTime; if (startTime > beforeTime && startTime < afterTime)
{
myProcess.Kill();
}
}
}
lock(xml文件对象)
{
//对xml文件的操作 //最后关闭资源
}