2014.2.24 带参数多线程实例
Posted mol1995
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2014.2.24 带参数多线程实例相关的知识,希望对你有一定的参考价值。
定义全局变量
ParameterizedThreadStart ParaStart; //表示带参数的多线程
Thread[] tds = new Thread[10]; //运行时再实例化
static object objLock = new object(); //多线程锁
//运行中
ParaStart = new ParameterizedThreadStart(ReadPic);
for (int i = 0; i < 10; i++) //创建10个线程处理照片
{
tds[i] = new Thread(ParaStart); //初始化每个线程
tds[i].Start(i); //执行
}
public void ReadPic(object num)
{
int cur = (int)num;
for (int i = 0; i < pts[cur].Count; i++)
{
string path = pts[cur][i].ToString();
string name = path.Substring(path.LastIndexOf("\\") + 1);
lock (objLock) //此多线程锁可防止返回的s与调用的guline不一致的情况发生
{
byte[] imageData = TransPIc(path);
MemoryStream ms = new MemoryStream(imageData);
Image img = Image.FromStream(ms);
imgs.Add(img);
}
}
}
以上是关于2014.2.24 带参数多线程实例的主要内容,如果未能解决你的问题,请参考以下文章