c# 如何给新开的线程一个参数
时间: 2024-02-23 08:02:46 浏览: 147
在 C# 中,可以使用 Thread 类的 ParameterizedThreadStart 委托来给新开的线程传递参数。这个委托可以接受一个 object 类型的参数,在新线程中通过强制类型转换来获取传递的参数。
例如,假设我们要启动一个新线程来执行一个方法,这个方法有一个 string 类型的参数,可以这样写:
```
string param = "hello";
Thread newThread = new Thread(new ParameterizedThreadStart(DoWork));
newThread.Start(param);
```
其中,DoWork 是我们要执行的方法,它的签名应该是这样的:
```
void DoWork(object param)
{
string strParam = (string)param;
// do something with strParam
}
```
在启动新线程时,将参数 param 传递给 Start 方法,它会自动调用 DoWork 方法,并将参数传递给它。在 DoWork 方法中,我们需要将参数转换为正确的类型,然后就可以使用它了。
阅读全文