首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

请问循环中的线程有关问题

2012-02-02 
请教循环中的线程问题我做了一个简单的下载程序,用一个线程循环下载一个文件列表用下面的方式不能正确显示

请教循环中的线程问题
我做了一个简单的下载程序,用一个线程循环下载一个文件列表
用下面的方式   不能正确显示下载状态   我对线程不是很了解
  请各位高手指点   该怎样做

System.Threading.Thread   thread001   =   null;
DownloadClass   dc   =   new   DownloadClass();   //下载类                                    
System.Threading.ThreadStart   startDownload   =   new   System.Threading.ThreadStart(dc.DownloadFile);//dc.DownloadFile是下载类中的函数
for   (int   i   =   0;   i   <   rc.Count;   i++)
{
thread001   =   new   System.Threading.Thread(startDownload);
thread001.Start();
  }

[解决办法]
有没有冲突要看你的DownloadFile方法是怎么实现的。如果有冲突的话,可以使用互斥锁。
[解决办法]
检查DownloadFile到本地是不是路径一样
[解决办法]
Monitor用法

try
{
Monitor.Enter(this)
// 公共资源处理代码
}
finally
{
Monitor.Exit(this)
}

至于显示下载状态不正确,你的需求说明不是很清楚,无法解释

[解决办法]
这种下载的可以考虑一下线程池
http://www.cnblogs.com/Bird/archive/2007/03/12/671880.html

热点排行