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型参数的方法才可以匹配。

posted @ 2016-01-07 15:45  小城菇凉  阅读(808)  评论(0编辑  收藏  举报