C# 38. 开启线程的各种方法

本文通过多个示例详细介绍了如何在C#中创建和启动线程,包括使用ThreadStart委托、匿名方法和Lambda表达式。同时展示了如何传递参数给线程函数,并在函数内部执行特定操作。示例涵盖了从基础的线程创建到更复杂的参数传递,为理解和应用多线程编程提供了清晰的指导。
摘要由CSDN通过智能技术生成
ThreadStart myThreadStart = new ThreadStart(ThreadFunction);
Thread myThread = new Thread(myThreadStart );
myThread.Start();
public void ThreadFunction(){	Console.WriteLine("我开启了一个线程!Id是" + Thread.CurrentThread.ManagedThreadId);
}
Thread myThread = new Thread(new ThreadStart(ThreadFunction));
myThread.Start();
new Thread(new ThreadStart(ThreadFunction)).Start();
Thread myThread = new Thread(() => Console.WriteLine("我开启了一个线程!Id是" + Thread.CurrentThread.ManagedThreadId));
myThread.Start();
//使用Lamdba表达式
new Thread(()=>{
//do something
	Console.WriteLine("我开启了一个线程!Id是" + Thread.CurrentThread.ManagedThreadId);
}).Start();
//使用Lamdba表达式
Thread myThread = new Thread(()=>{
//do something
	Console.WriteLine("我开启了一个线程!Id是" + Thread.CurrentThread.ManagedThreadId);
});
myThread.Start();
//使用Lamdba表达式   调用其他的函数
Thread myThread = new Thread(() =>
{
ThreadFunction();
});
myThread.Start();
Thread myThread = new Thread(new ThreadStart(() => ThreadFunction(3, 4)));
myThread.Start();
public void ThreadFunction(int a, int b){	Console.WriteLine("我开启了一个线程!Id是" + Thread.CurrentThread.ManagedThreadId);
	Console.WriteLine("a+b=" + (a+b));
}
//传递带参数的方法参数是object类型的,
Thread myThread = new Thread(ThreadFunction); 
myThread .Start("test.jpeg");
public void ThreadFunction(object filename)
{
Console.WriteLine("开始上传" + filename);
Thread.Sleep(1000);
Console.WriteLine("上传完成");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值