前言:

多线程无处不在,平常的开发过程中,应该算是最常用的基础技术之一了。以下通过Thread、ThreadPool、再到Task、Parallel、线程锁、线程取消等方面,一步步进行演示多线程的一些基础操作。欢迎大家围观。如果大佬们有其他关于多线程的拓展,也欢迎在评论区进行留言,大佬们的知识互助,是.net生态发展的重要一环,欢迎大佬们进行留言,帮助更多的人。

本文章为了防爬虫,特此放上原文链接,如果大家在其他地方(博客园与CSDN以外的地方)搜索到,可以点以下链接,跳转回原文:

https://www.cnblogs.com/weskynet/p/16391095.html

以下博客内容使用的一些环境:

系统环境:WIN 10

.NET 环境: .NET 6

VS 环境:VS 2022

其他:没了

以下正文:

1、先创建一个.NET 6控制台项目,用来当做该博客文章的实验使用。

【.NET 6】多线程的几种打开方式和代码演示-LMLPHP

 

2、快速创建一个线程。ParameterizedThreadStart是一个委托,传入的参数是一个object类型。

【.NET 6】多线程的几种打开方式和代码演示-LMLPHP

 

代码:

ParameterizedThreadStart threadStart = new((obj) => {
    Console.WriteLine($"当前线程 的 ID = {Thread.CurrentThread.ManagedThreadId}");
});

Thread thread = new Thread(threadStart);
thread.Start();
Console.WriteLine($"线程ID  = {thread.ManagedThreadId}");
Console.ReadLine();
06-19 23:11