没有F#异步包装(在PowerPack中)为既不
TcpListener.BeginAcceptTcpClient()也没有EndAcceptTcpClient().
我如何编写自己的包装器,以便我可以使用let!和async关键字并行运行它?
你检查过这个Async.BuildPrimitive功能吗?我想你可以这样做:
type TcpListener with
member x.AsyncAcceptClient() =
Async.BuildPrimitive(x.BeginAcceptTcpClient, x.EndAcceptTcpClient)
Run Code Online (Sandbox Code Playgroud)
创建一个返回适当的异步结果的扩展方法.