在C#中多用户或多线程对用同一个XML进行同时操作,应该如何处理? 在C#中多用户或多线程对用同一个XML进行同时操作,应该如何处理? 请高手们给点资料,或者代码片段,哪怕写点心得也行。。 谢谢。。 ------解决方案-------------------- ·1 用数组放置用户请求列表。 2 对XML的文件状态进行标记. 分,正在操作、空闲状态 线程1: 当用户请求访问时,将请求放置数组中。 线程2: 对数组进行遍历,控制XML文档。 ------解决方案-------------------- 用Lock锁定XML不就可以了,不需要自己做访问队列 ------解决方案-------------------- public class ReadXml { private static object res = new object(); public static void Read() { lock(res) { //读取XML } } } ------解决方案-------------------- 数据库操作 ReaderWriterLock 多个执行线程,分割文件 private static object objectLock = new object(); lock (objectLock) {} |
|
来自: goodwangLib > 《多线程》