5

我需要确保 BackgroundWoker 在被调用之前不忙,所以我检查IsBusy并调用CancelAsync如果是:

if (bgWorker.IsBusy)
                bgWorker.CancelAsync();

但如果为真,则在说“BackgroundWorker 不支持取消”IsBusy时会发生 InvalidOperationException 异常。CancelAsync()

该文档使用法看起来非常简单,那么我做错了什么?如何取消作业?

4

1 回答 1

12

您需要将BackgroundWorker.WorkerSupportsCancellation 属性设置为 true。

于 2012-05-01T04:24:42.037 回答