李超

cc编程笔记本。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2007年12月27日

摘要: BackgroudWorker是.Net的Winform开发中处理可能会阻塞界面的耗时操作的标准做法,这种做法也许不是效率最高的(你可以使用BeginInvoke与EndInvoke并在EndInvoke获取结果然后根据结果修改界面显示,当然是询问InvokeRequired方式,也可以Thread.Start并在函数中根据结果以control.Invoke方式修改界面显示,但是这些不是最优雅的代... 阅读全文
posted @ 2007-12-27 23:16 coderlee 阅读(1557) 评论(1) 推荐(0) 编辑

摘要: 多线程Winform编程会带来的常见问题 1 UI线程执行耗时操作 UI线程被阻塞 无法响应窗体消息队列中的其他消息。 2 非UI线程修改UI属性 由于窗体资源也属于临界资源 所以有互斥访问的机制。 3 线程的同步问题 线程A等待线程B执行完毕后才能开始执行。 问题1的解决方法: 解决方法只有一种,就是开启新线程执行耗时操作,使原界面线程仍能够响应窗体消息队列中的用户消息及系统消息。 ... 阅读全文
posted @ 2007-12-27 18:23 coderlee 阅读(2464) 评论(0) 推荐(0) 编辑