C#线程运行的机制和原理

本文介绍了C#中BackgroundWorker类用于后台线程执行任务的机制,包括WorkReportsProgress和WorkerSupportsCancellation属性,以及RunWorkerAsync、CancelAsync、ReportProgress方法。文章详细阐述了DoWork、ProgressChanged和RunWorkerCompleted事件的用途,并展示了如何在事件处理程序中使用这些类,以实现线程的进度汇报、取消和结果返回。
摘要由CSDN通过智能技术生成


BackgroundWorker类可以简化线程在后台执行任务的工作,它具有以下几种主要成员:


属性:WorkReportsProgressWorkerSupportsCancellationIsBusy;方法: RunWorkerAsync( )CancellAsync( )ReportProgress( );事件:DoWorkProgressChangedRunWorkerCompleted;这几种主要成员。


WorkReportsProgress以及WorkerSupportsCancellation属性用于设置是否后台任务可以把进度汇报给主线程以及是否支持从主线程取消;IsBusy属性用来检查是否正在运行后台任务。

3种事件用于发送不同的程序事件和状态;后台线程开始时触发Dowork事件,后台任务汇报状态的时候触发ProgressChanged事件,后台工作线程退出的时候触发RunWorkerCompleted事件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值