频繁运行某一操作带来的问题
C# code
private void MyMethod()
{
//调用方法1;
//调用方法2;
...
// 调用方法n;
}
方法1,方法2这些都是独立的,里面有对变量的操作等,当频繁调用MyMethod()导致了各方法重复频繁运行,这样就可能对同一变量多次赋值,造成错误。
有没有一种机制,能在运行MyMethod()的时候将这个方法内涉及到的方法和变量进行管理,并能对其管理。也就是当调用MyMethod()的时候判断这个方法内是否还在运行,如果是停止掉上一次还在运行的。???
欢迎各位高手不吝赐教。
------解决方案--------------------
lock(cs){
}
------解决方案--------------------
如果是同步的,MyMethod中会执行完,下一次才会被执行,不存在判断是否还在进行的道理
如果是异步,那就加锁,家互斥