F# 异步工作流程

6

有没有一种方法可以查看异步工作流的定义?在异步工作流中,底层发生了什么,会使一行代码的行为与其外部不同?

2个回答

5
如果你所说的“异步工作流”是指定义了async块行为的AsyncBuilder类型,那么你可以在源码包的control.fs文件中,在source\fsharp\FSharp.Core文件夹中找到其定义。
计算表达式转换为对构建器实例上方法调用的翻译可以在F#规范中找到。

如果你理解C#中的LINQ(语法重写成方法调用)是如何工作的,你就能通过将F#工作流翻译成构建器对象上的方法调用来理解它们的工作原理。如果你对异步的具体细节感到好奇,那么可以查看源代码中的control.fs文件。+1 为规范而设。 - Brian
一个人从哪里获取fs源代码? - akaphenom
@akaphenom - 源代码随 F# 2.0 发布于 VS 2008(http://www.microsoft.com/downloads/details.aspx?FamilyID=444005fb-e627-4feb-b51d-13d6a3b4b8ed)。我不确定它是否也默认包含在 VS 2010 安装中... - kvb

5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接