读书人

在线程上调用自己的方法,结果无法返回

发布时间: 2012-02-19 19:43:39 作者: rapoo

在线程上调用自己的方法,结果无法返回正确的结果
两个类
类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();

读书人网 >C#

热点推荐