你的位置:首页 > ASP.net教程

[ASP.net教程]C#Question:“XXX”的重载均与“System.Threading.WaitCallback”不匹配。


public static class ThreadPool  //   提供一个线程池,该线程池可用于执行任务、发送工作项、处理异步 I/O、代表其他线程等待以及处理计时器。{[SecuritySafeCritical]public static bool QueueUserWorkItem(WaitCallback callBack);[SecuritySafeCritical]public static bool QueueUserWorkItem(WaitCallback callBack, object state);}public delegate void WaitCallback(object state); //表示线程池线程要执行的回调方法.

在调用回调方法时:

ThreadPool.QueueUserWorkItem(new WaitCallback(InsertBattleRecord), new RoomArgs(room, session.AppServer.Log));

报错:不明白原因。

image

从网上找到原因:

1、请参见 WaitCallback 委托的声明:
public delegate void WaitCallback(object state);
由此可见,需要一个无返回值的,并且有一个object型参数的方法才可以匹配。