C#:'function'没有重载匹配委托System.Threading.WaitCallBack
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#:'function'没有重载匹配委托System.Threading.WaitCallBack相关的知识,希望对你有一定的参考价值。
所以我最近一直在使用线程并且错误(C#:'Generic_Function'没有重载匹配委托System.Threading.WaitCallBack)让我感到困惑。
起初我以为必须传递参数,然后我才知道它很容易为空。
ThreadPool.QueueUserWorkItem(new WaitCallback(Generic_Function), null);
不应该是函数,然后定义为:
void Generic_Function(){
//Code here
}
但是,我收到了一个错误。我在这里错过了什么,我很难过。我已经尝试过阅读文档,但我想我并没有完全理解它。如果有人能解释,我会很感激。非常感谢!
答案
根据documentation,WaitCallback定义如下:
public delegate void WaitCallback(object state);
因此,如果您希望代码能够正常工作,则可以进行此修改:
void Generic_Function(object state)
{
//Code here
}
另一答案
如果由于某些原因你无法改变Generic_Function
签名,你可以用lambda打包一个调用:
ThreadPool.QueueUserWorkItem(_ => Generic_Function());
以上是关于C#:'function'没有重载匹配委托System.Threading.WaitCallBack的主要内容,如果未能解决你的问题,请参考以下文章
'mysql'没有重载匹配委托'ElapsedEventHandler'。 Windows服务C#
我收到错误:调用重载'max(Cents&,Cents&)'是不明确的[重复]
C++error C2511: overloaded member function 'void (void)' not found in 'class'请大神指教