c# 启动带参数的线程
时间: 2024-09-19 08:14:44 浏览: 64
在 C# 中,启动带参数的线程可以通过创建一个新的 Thread 类实例,并在其构造函数中传入一个方法作为参数,这个方法就是线程要执行的任务。任务方法通常会接收一个额外的对象作为参数,这个对象就是你在启动线程时传递的参数。下面是一个基本的例子:
```csharp
// 定义一个接受两个参数的方法,第一个参数是ThreadStart对象,第二个参数是我们要传递的自定义参数
delegate void MyThreadStart(object customParameter);
// 创建一个方法,这个方法是我们想要在新线程中运行的
private void CustomMethod(int parameter)
{
Console.WriteLine($"Thread started with parameter: {parameter}");
// 这里是线程要执行的具体操作
}
// 在主线程中启动带参数的线程
MyThreadStart threadTask = new MyThreadStart(CustomMethod);
Thread myThread = new Thread(threadTask); // 参数是我们之前定义的CustomMethod
myThread.Start(10); // 在这里传递参数,这里是整数10
```
在这个例子中,我们创建了一个名为 `CustomMethod` 的方法,然后将其包装在一个 `MyThreadStart` 委托中。当我们创建线程时,我们将这个委托和我们的自定义参数(在这里是整数10)一起传递给 `Thread` 构造函数。
阅读全文