如何避免从F#库返回Task <Microsoft.FSharp.Core.Unit>

Mar*_*tin 8 .net c# clr f# interop

当使用Async.StartAsTask在F#中包装异步操作时,返回的类型将是Task<unit>.这使得接口的用户依赖于F#核心库.是否有建议的做法来避免这种情况,或者通常是否接受将其置于默认状态?

Dan*_*ley 9

您可以简单地将其转换Task<Unit>为a,Task因为您不需要访问通用结果.

例如

let taskOfUnit = asyncOfUnit |> Async.StartAsTask
taskOfUnit :> Task
Run Code Online (Sandbox Code Playgroud)