回调函数

时间:2009-03-12 14:52:56

标签: c# .net delegates callback

我有一个名为funct的方法,当我在c#中使用isreceive套接字方法时,我希望将其作为我的回调函数。

s.BeginReceive(buffer, 0, buffer.Length, System.Net.Sockets.SocketFlags.None,
               new AsyncCallback(funct), null);

我得到的错误是:

  

'funct'没有重载匹配委托'System.AsyncCallback'

这可能是什么问题?

4 个答案:

答案 0 :(得分:6)

“funct”必须是具有以下签名的方法:

void funct(IAsyncResult ar) { }

答案 1 :(得分:2)

您不能只使用任何方法进行回调。该函数必须具有特定的签名(参数列表)。

答案 2 :(得分:1)

功能是什么?是代表吗? 如果是,它的签名与AsyncCallback委托不兼容。

功能必须是这样的方法:

void SomeMethod(IAsyncResult ar)

答案 3 :(得分:0)

你的'功能'方法签名是怎样的?

它返回无效吗?

它是否只有IAsyncResult类型的一个参数?

换句话说,您的“功能”方法是否符合Asynccallback代表?