-
一只萌萌小番薯
是的:Thread t = new Thread (new ParameterizedThreadStart(myMethod));t.Start (myParameterObject);
-
三国纷争
Thread构造函数的2个重载之一使ParameterizedThreadStart委托成为可能,该委托使您可以将单个参数传递给start方法。不幸的是,尽管它只允许使用一个参数,但这样做并不安全,因为它将其作为对象传递。我发现使用lambda表达式捕获相关参数并以强类型方式传递它们要容易得多。尝试以下public Thread StartTheThread(SomeType param1, SomeOtherType param2) { var t = new Thread(() => RealStart(param1, param2)); t.Start(); return t;}private static void RealStart(SomeType param1, SomeOtherType param2) { ...}
-
忽然笑
您可以使用lambda表达式private void MyMethod(string param1,int param2){ //do stuff}Thread myNewThread = new Thread(() => MyMethod("param1",5));myNewThread.Start();到目前为止,这是我能找到的最佳答案,它既快速又容易。