目录
一、BackgroundWorker类介绍
在项目开发中,有时要执行耗时的操作,在该操作未完成之前操作用户界面,会导致用户界面停止响应。解决的方法就是新开一个线程,把耗时的操作放到线程中执行,这样就可以在用户界面上进行其它操作。
新建线程可以用 Thread 类,可以实现多线程同时操作,但这种方法需要处理UI跨线程显示的问题,需要用委托来调用控件的 Invoke 或 BeginInvoke 等方法,较难实现。
其实,微软已经提供了很好的专门类: BackgroundWorker 类。
BackgroundWorker类允许您在单独的线程上执行某个可能导致用户界面(UI)停止响应的耗时操作(比如文件下载数据库事务等),并且想要一个响应式的UI来反应当前耗时操作的进度。可以看的出来,BackgroundWorker组件提供了一种执行异步操作(后台线程)的同时,并且还能妥妥的显示操作进度的解决方案
命名空间: System.ComponentModel<