繁体   English   中英

如何在C#中停止/销毁正在运行的操作

[英]How to stop / destroy a running operation in c#

我有一个带有“开始”和“取消”按钮的Windows窗体。

“开始”按钮执行以下操作:

bootLoader = new BootLoader(this, _form1);
bootloader.Start();

现在,当用户单击开始按钮时,BootLoader类将数据写入COM端口。

我想知道的是,当用户单击“取消”按钮时,如何才能停止完成此操作。

目前,我只有以下内容:

this.Close();

但是它只是关闭表格并且数据继续被写入到COM端口。

使用可取消的BackgroundWorker

var bw = new BackgroundWorkder();
bw.WorkerSupportsCancellation = true;

然后,在DoWork worker函数中,您需要监视CancellationPending标志,该标志在调用bw.CancelAsync()之后将变为true。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM