C# 多线程学习笔记

简介

多线程是一种并发编程的方式,可以提高程序的性能和响应速度,特别是对于需要执行耗时操作的应用程序。在C#语言中,可以使用System.Threading命名空间下的类库来实现多线程的编程。

创建和启动线程

在C#中,要创建一个新的线程,可以使用Thread类。Thread类的构造函数接受一个ThreadStart委托类型的参数,它指定了当线程启动时调用的方法。

csharpCopy Code
using System; using System.Threading; public class MyThread { public void ThreadMethod() { //执行多线程操作的代码 } } class Program { static void Main() { MyThread myThread = new MyThread(); Thread thread = new Thread(new ThreadStart(myThread.ThreadMethod)); thread.Start(); } }

传递参数

如果需要在线程之间传递数据,可以使用ParameterizedThreadStart委托类型,它接受一个object类型参数作为线程方法的参数。

csharpCopy Code
using System; using System.Threading; public class MyThread { public void ThreadMethod(object obj) { string message = (string)obj; Console.WriteLine("Message: {0}", message); } } class Program { static void Main() { MyThread myThread = new MyThread(); Thread thread = new Thread(new ParameterizedThreadStart(myThread.ThreadMethod)); thread.Start("Hello, World!"); } }

后台线程

在C#中,默认情况下,创建的线程是前台线程。如果需要创建后台线程,可以将Thread.IsBackground属性设置为true。

csharpCopy Code
using System; using System.Threading; public class My [Something went wrong, please try again later.]