如果我对异步 I/O 使用匿名方法,谁能告诉我是否可能会遇到意外行为?
举个例子:
Action<Socket> acceptedHandler = DoAccept
SocketAsyncEventArgs e = new SocketAsyncEventArgs();
e.Completed += ((sender, ea) => acceptedHandler(ea.AcceptSocket));
// Server is a Socket
if (!Server.AcceptAsync(e))
acceptedHandler(e);
这同样适用于 BeginXXX/EndXXX 异步 I/O。