日期:2014-05-20  浏览次数:20506 次

在线程上调用自己的方法,结果无法返回正确的结果
两个类
类A和类B
类B;有一个公共方法string   readxml(string   xm),主要功能是加载xml文件并获取指定节点的值

县在类A中实例化类B为ob,开一个线程执行类B的另外一个方法M

问题是直接用ob.readxml( "aa ")的方法可以得到正确的结果
但是由于需要,方法M也需要调用readxml方法,但是确无法得到正确的值,请问是怎么回事?

------解决方案--------------------
定义一个Mutex..

public Mutex mx=new Mutex();

在调用Readxml方法时:

mx.WaitOne();
readxml();
mx.ReleasMutex();