没有过载';void';匹配委托';ThreadStart';
本文关键字:ThreadStart void 没有过 | 更新日期: 2023-09-27 18:28:27
我想在新线程中运行以void
作为返回类型的函数,但它总是显示以下错误:
"myVoid"没有与委托"ThreadStart"匹配的重载
和我的代码:
Thread t = new Thread(new ThreadStart(myVoid)); // <-- Error Shows Here
t.Start("Test","Test2");
// And The Void :
void myVoid(string text, string text2)
{
Console.WriteLine(text + text2);
}
我该怎么修?怎么了?
ThreadStart
委托需要一个不带参数的委托。如果要在线程中使用myVoid
,则需要提供一种方法来在myVoid
和无参数委托之间进行匹配。
一种方法是提供lambda,如下所示:
Thread t = new Thread(new ThreadStart(() => myVoid("Test", "Test2")));
t.Start();
这意味着具有2个字符串参数的方法myVoid
与委托不匹配。