C#多线程学习笔记

C#多线程

1、多线程使用一般方法

Thread t = new Thread(new ThreadStart(Method));
Method为无参函数,若要传递参数,可以将Method的参数设置为object类型。

2、多线程处理List

最近碰到了多线程处理List的问题,开始的想法是开启5个线程,每个线程轮流获取List中的字符串,但是处理完一个字符串就有一个问题,线程无法重用,线程重用可以用到ThreadPool,不想用线程池,所以自己想办法。

3、自己new线程
最终解决方案:因为List的个数是固定的,所以可以把List分成5段,每段new一个线程去处理。这里有一个问题需要处理,就是List下标传参问题,我的方法是创建一个新的类:
Class MultiThread{
int start;
int end;
void mehod()
{

}
}
这样,new MultiThread后(下标在new的时候赋值),调用mehod,去执行,但是这个方法主线程不会等待子线程执行完,所以需要有一个判定机制:
while(子线程执行完毕条件)条件可以根据自己实际情况去判定。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值