【问题标题】:Callback Function回调函数
【发布时间】:2009-03-12 14:52:55
【问题描述】:

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

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

得到的错误是:

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

这可能是什么问题?

【问题讨论】:

    标签: c# .net delegates callback


    【解决方案1】:

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

    void funct(IAsyncResult ar) { }
    

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        【解决方案3】:

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

        funct 必须是如下所示的方法:

        void SomeMethod(IAsyncResult ar)
        

        【讨论】:

          【解决方案4】:

          你的“功能”方法签名是什么样子的?

          它返回 void 吗?

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

          换句话说,你的 'funct' 方法是否符合 Asynccallback 委托?

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2018-08-19
            • 2019-12-07
            • 2013-07-29
            • 1970-01-01
            相关资源
            最近更新 更多