发明名称 |
可恢复的方法 |
摘要 |
提供了API,所述API处于编程语言的外部但是提供可插入到语言编译器中的功能。所提供的API调节与使用通用基于模式的方案进行的异步编程、迭代器或编写对称协同例程相关联的功能。在API中提供了若干类型的可恢复方法,所述可恢复方法可以应用于以传统程序代码编写的方法主体。以传统编程代码编写的方法主体中的在句法上可区分的控制点通过编译器使用外部API来调用该代码的变换。经变换的代码实现夹在经变换的代码的控制点之间的代码的暂停和恢复。里面具有控制点的方法内所包括的源代码被变换为使得该方法内的代码可以在分立的部分中执行,每个部分都在经变换的代码中的控制点处开始和结束。 |
申请公布号 |
CN102859489A |
申请公布日期 |
2013.01.02 |
申请号 |
CN201180020904.5 |
申请日期 |
2011.04.26 |
申请人 |
微软公司 |
发明人 |
H·J·M·梅杰;M·托格森;N·M·加夫特;N·古斯塔夫松 |
分类号 |
G06F9/44(2006.01)I;G06F9/45(2006.01)I |
主分类号 |
G06F9/44(2006.01)I |
代理机构 |
上海专利商标事务所有限公司 31100 |
代理人 |
胡利鸣 |
主权项 |
一种系统,包括:处理器和存储器;以及编译器,所述编译器被配置为致使所述处理器:接收包括可恢复方法的源代码,所述可恢复方法包括在句法上可区分的控制点表达式,所述控制点表达式具有签名,其中所述编译器调用多个程序模块中的程序模块,被调用的程序模块是由所述控制点表达的签名确定的,其中所述编译器从被调用的程序模块中创建至少一个专用对象;以及加载处于所述编译器外部的库,所述库包括所述多个程序模块。 |
地址 |
美国华盛顿州 |