我在F#中定义了一个接口
type IConnect =
abstract Update: seq<DataType> -> Async<bool>
Run Code Online (Sandbox Code Playgroud)
我希望在同一appdomain中的其他应用程序实现它,以便我可以在实现接口的任何实现上调用Update(我在TinyIoC容器中收集实现).返回类型Async<bool>可以指示更新是否成功,而不必等待它.我可以并行更新应用程序.
其他应用程序是用c#编写的,当我开始编写一个引用(模拟)实现时,我意识到这需要任何实现者使用一个FSharpAsync不太漂亮的类型.
那么,我如何定义接口,以便在c#中轻松实现并保持异步方面?
使用Task或者IObservable。您可以轻松地在工作流程之间进行转换,并且async它是一种可以在 C# 或大多数 .Net 语言中使用的简单类型。Task<T>
type IConnect = abstract Update: seq<DataType> -> Task<bool>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
208 次 |
| 最近记录: |