摘要: 在我们的程序中,经常会有一些耗时较长的运算,为了保证用户体验,不引起界面不响应,我们一般会采用多线程操作,让耗时操作在后台完成,完成后再进行处理或给出提示,在运行中,也会时时去刷新界面上的进度条等显示元,必要进,还要控制后台线程中断当前操作。以前,类似的应用会比较麻烦,需要写的代码较多,也很容易出现异常。在 .net中,提供了一个组件 backgroundworker就是专门解决这个问题的。使用这个组件其实非常简单,例如,我们做一个类似如下界面的进度条的小例子,在后台线程中进行耗时运算,同时刷新界面上的滚动条和提示信息,运行结束后,弹出处理结果。在界面上拖入backgroundWorker组件 阅读全文
posted @ 2011-12-11 16:37 Tammie-锴 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 一、BackgroundWorker组件经验之谈在VS2005中添加了BackgroundWorker组件,该组件在多线程编程方面使用起来非常方便,然而在开始时由于没有搞清楚它的使用机制,走了不少的弯路,现在把我在使用它的过程中的经验与诸位分享一下。BackgroundWorker类中主要用到的有这列属性、方法和事件: 重要属性: 1、CancellationPending获取一个值,指示应用程序是否已请求取消后台操作。通过在DoWork事件中判断CancellationPending属性可以认定是否需要取消后台操作(也就是结束线程); 2、IsBusy获取一个值,指示 BackgroundW 阅读全文
posted @ 2011-12-11 12:34 Tammie-锴 阅读(877) 评论(1) 推荐(1) 编辑