C# 在同一个lambda表达式上传递lambda表达式作为回调函数
这是我的密码C# 在同一个lambda表达式上传递lambda表达式作为回调函数,c#,lambda,delegates,C#,Lambda,Delegates,这是我的密码 _serverSocket.BeginAccept(AcceptCallback, null); private static void AcceptCallback(IAsyncResult AR) { ... _serverSocket.BeginAccept(AcceptCallback, null); } 我想把它缩短成一个lambda表达式 将来 我在想,如果有一种方法可以将一个lambda表达式作为委托方法传递给事件调用,我要说的是如何
_serverSocket.BeginAccept(AcceptCallback, null);
private static void AcceptCallback(IAsyncResult AR)
{
...
_serverSocket.BeginAccept(AcceptCallback, null);
}
我想把它缩短成一个lambda表达式
将来
我在想,如果有一种方法可以将一个lambda表达式作为委托方法传递给事件调用,我要说的是如何从同一个表达式内部调用同一个lambda表达式的一般目的,有点像递归,这可能吗
在这种特殊情况下,有没有办法避免使用一个循环来冻结应用程序,并仍然使用lambda作为accept回调,即仍然从lambda表达式内部调用begin accept,您可以尝试以下方法:
AsyncCallback asyncCallback = null;
asyncCallback = ar =>
{
_serverSocket.BeginAccept(asyncCallback, null);
};
_serverSocket.BeginAccept(asyncCallback, null);
这里有一个等待的插座,没有任何意义。它看起来是递归的,委托调用委托。。。
AsyncCallback asyncCallback = null;
asyncCallback = ar =>
{
_serverSocket.BeginAccept(asyncCallback, null);
};
_serverSocket.BeginAccept(asyncCallback, null);