C# 多线程处理多文件 不使用线程池 5C

有一个list存储所有文件路径,现在我想开启5个线程,调用void CalMehod(string path)对每个文本进行分析,请问,不用threadPool能实现吗?能给出具体代码更好,谢谢!

2个回答

不用线程池中的线程的话,可以直接去new Thread(),或者使用Task类开启新线程
1.用lambda表达式:

Thread td = new Thread(()=>{
                CallMethod(path);
});
td.start();

2.使用ParameterizedThreadStart

ParameterizedThreadStart tds = new ParameterizedThreadStart(CallMethod);
Thread td = new Thread(tds);
td.Start(path);
hxycsdn9159
hxycsdn9159 回复wangyunman: 1.用lambda表达式 Thread td = new Thread((path)=>{Console.Write("参数是:"+arg);});2.用ParameterizedThreadStart类 ParameterizedThreadStart tsd = new ParameterizedThreadStart(CallMethod)
9 个月之前 回复
wangyunman
wangyunman new的话,要把方法先给线程吧?但是方法带参数,怎么传递?
9 个月之前 回复

new 5个 Thread 就可以了啊~

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐