项目中利用BackgroundWorker组件在后台进行耗时计算,现在有个需求是中间允许计算暂停,但BackgroundWorker组件似乎并没有提供暂停的方法,而且试了很多方式,比如Monitor.Wait()等都不行。请各位帮帮忙,在此谢过~~
我查了一下资料,这个控件本身确实也没有提供这样的暂停方法,这个可能也是有道理的吧!我觉得你可以在那个任务执行的代码中设置一个静态变量作为一个标志,通过这个标识位来判断用户是否暂停了,如果暂停了你就让当前线程挂起,如果没暂停你就让它继续吧!当然对于这个静态标志也要进行lock的!这只是一个思路吧