摘要: 在使用C#进行应用程序设计时,经常会采用多线程的方式进行一些后台任务的工作。对于不同的应用场景,使用的策略也不尽相同。 后台循环任务,少量UI更新:例如批量上传文件,并提供进度。这种情况使用BackgroundWorker组件是非常好的选择。 耗时的后台任务:这里的耗时任务是指一个时间较长的任务,并且不能精确获取进度,如:调用一个远程WebService接口。这种情况可以开两个线程,一个工作,一个更新UI(不能提供进度,只能显示动画表示系统在运行中)。 耗时的UI任务:当工作压力集中在UI响应上时,可以在工作者线程中增加延时,从而让UI线程获得响应时间。整个工作的总体时间会增加,但用户响应效果会好很多。 阅读全文
posted @ 2010-10-14 00:28 非常可乐 阅读(311) 评论(0) 推荐(0) 编辑
摘要: BackgroundWorker组件 在VS2005中添加了BackgroundWorker组件,该组件在多线程编程方面使用起来非常方便,然而在开始时由于没有搞清楚它的使用机制,走了不少的弯路,现在把我在使用它的过程中的经验与诸位分享一下。 BackgroundWorker类中主要用到的有这列属性、方法和事件: 阅读全文
posted @ 2010-10-14 00:26 非常可乐 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 在介绍工具之前,我需要说明几点: 1.如果你编写的软件不涉及商业用途的话,本着开源的思想,本人不推荐使用代码混淆器 2.使用代码混淆器存在一定的风险,在使用前最好做好相关代码备份 3.凡是需要序列化成二进制的代码,是不能用混淆器的。混淆后的代码将不能正常序列化! 阅读全文
posted @ 2010-10-14 00:06 非常可乐 阅读(959) 评论(0) 推荐(0) 编辑