C#之线程ThreadStart
Posted xingyuanzier
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#之线程ThreadStart相关的知识,希望对你有一定的参考价值。
本来自于https://docs.microsoft.com/zh-cn/dotnet/api/system.threading.threadstart?view=netframework-4.8;
static void Main(string[] args)
ThreadStart threadStartDelegate = new ThreadStart(Work.DoWork); //创建委托
Thread thread = new Thread(threadStartDelegate); //用ThreadStart委托实例化线程Thread
thread.Start();
ThreadStart threadStartDelegate = new ThreadStart(Work.DoWork); //创建委托
Thread thread = new Thread(threadStartDelegate); //用ThreadStart委托实例化线程Thread
thread.Start();
Work work = new Work();
work.Data = 42;
threadStartDelegate = new ThreadStart(work.DoMoreWork);
thread = new Thread(threadStartDelegate);
thread.Start();
Console.ReadKey();
work.Data = 42;
threadStartDelegate = new ThreadStart(work.DoMoreWork);
thread = new Thread(threadStartDelegate);
thread.Start();
Console.ReadKey();
public class Work
public static void DoWork()
Console.WriteLine("Static thread procedure.");
public int Data;
public void DoMoreWork()
Console.WriteLine("Instance thread procedure. Data=0", Data);
public static void DoWork()
Console.WriteLine("Static thread procedure.");
public int Data;
public void DoMoreWork()
Console.WriteLine("Instance thread procedure. Data=0", Data);
C#使用线程时首先需要创建线程,使用Thread类构造函数创建实例需要用到ThreadStart委托或者ParameterizedThreadStart 委托创建 Thread 类的实例,ThreadStart 委托只能用于无返回值、无参数的方法,ParameterizedThreadStart 委托则可以用于带参数的方法。线程不会直接运行,直至调用Start()方法时为止。
以上是关于C#之线程ThreadStart的主要内容,如果未能解决你的问题,请参考以下文章