c# 关于backgroundWorker的取消
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 关于backgroundWorker的取消相关的知识,希望对你有一定的参考价值。
我调用backgroundWorker1.RunWorkerAsync()后,在Dowork事件工作中的时候,我有一个按钮可点击,点击后调用backgroundWorker1的CancelAsync()方法,这个方法是挂起进程运行的吧,以为我再调用RunWorkerAsync()会报异常说正在工作,我该用什么方法来完全取消这个backgroundWorker1在后台的运行,以至我再调用RunWorkerAsync()不会报错
参考技术A 在你的DoWork事件工作中的那个方法里面,也就是以后台线程运行的那个方法里面,需要周期性检测backgroundWorker1.CancellationPending属性,如果其为true,马上让方法返回。这样你再调用CancelAsync()就可以了 参考技术B backgroundworker对线程的访问提供了一种安全的方式。对thread的一次封装。用于在单独的线程上运行操作。
thread
用于线程的创建和控制的类。 参考技术C 进我空间看一看有这方面的资料本回答被提问者采纳
以上是关于c# 关于backgroundWorker的取消的主要内容,如果未能解决你的问题,请参考以下文章