2009年12月21日
摘要: 相信大家都有用过网际快车等下载资源的经历,它里面是可以设置线程数的(近年版本默认是10,曾经默认是5)。它会将文件分成与线程数相同的部分,然后每个线程下载自己的那一部分,这样下载效率就有可能提高。相信大家都有加多线程数,提升下载效率的经历。但细心的用户会发现,在带宽一定的情况下,并不是线程越多,速度越快,而是在某一点达到峰值。在C#中用多线程并不难实现。它有一个命名空间:System.Thread... 阅读全文
posted @ 2009-12-21 08:25 米高佐敦 阅读(954) 评论(0) 推荐(0) 编辑
摘要: Using System.Threading; Thread thread1; Thread thread2; Delegate void AppendStringDelegate(string str); AppendStringDelegate appendStringDelegate; Public Form1() { InitializeComponent(); appendStringD... 阅读全文
posted @ 2009-12-21 08:25 米高佐敦 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 第二部分:线程同步基础同步要领下面的表格列展了.NET对协调或同步线程动作的可用的工具:简易阻止方法构成目的Sleep阻止给定的时间周期Join等待另一个线程完成锁系统构成目的跨进程?速度lock确保只有一个线程访问某个资源或某段代码。否快Mutex确保只有一个线程访问某个资源或某段代码。可被用于防止一个程序的多个实例同时运行。是中等Semaphore确保不超过指定数目的线程访问某个资源或某段代码... 阅读全文
posted @ 2009-12-21 08:23 米高佐敦 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 最近在做一个IIS日志分析的系统,由于日志文件是在服务器上,但是分析需要放到客户端进行(为了提高性能和安全性),第一步就是需要将日志文件从服务器上下载到客户机上,可以通过控制台程序实现些功能,并且这个下载过程应该是自动化的不需要人工干预。 准备做一个可视化的WinForm界面,这就需要反映文件下载进度,要达到这个实时报告进度的功能,就需要进行异步操作,可以通过线程或BackgroundWorke... 阅读全文
posted @ 2009-12-21 08:22 米高佐敦 阅读(695) 评论(0) 推荐(0) 编辑