[发明专利]用于异步方法的声明性支持无效

专利信息
申请号: 200980107877.8 申请日: 2009-01-30
公开(公告)号: CN101965561A 公开(公告)日: 2011-02-02
发明(设计)人: H·J·M·梅杰;J·W·戴尔;J·凡高;D·范韦尔曾;H·坎塔姆尼;D·A·马诺列斯库;B·贝克曼;B·利夫希茨 申请(专利权)人: 微软公司
主分类号: G06F13/00 分类号: G06F13/00;G06F9/06;G06F15/16
代理公司: 上海专利商标事务所有限公司 31100 代理人: 黄嵩泉;钱静芳
地址: 美国华*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 异步 方法 声明 支持
【说明书】:

背景

计算机程序是描述由计算机或其他基于处理器的设备执行的动作的指令组。当计算机程序被加载并在计算机硬件上执行时,计算机将会跟随计算机程序的指令以预先确定的方式运转。因此,计算机变为执行可由各指令描述的任务的专用机器。

使用一种或多种编程语言的程序员创建构成计算机程序的指令。通常,源代码由程序员手动和/或在集成开发环境(IDE)的帮助下指定或编辑。随后,源代码可由另一程序来编译或以其他方式变换成可由计算机或类似设备执行的计算机指令。

例如,程序员可选择利用高级、面向对象编程语言(例如,C#、C++、VB、Java……)来实现代码。然后可利用相关联的编译器来为特定机器产生可执行代码。或者,该代码可被变换成用于目标虚拟机的中间语言(IL)代码以便于经由对该中间代码的进一步编译或解释来在多个计算机平台上执行。

方法在大多数编程语言中是重要的程序机制。在某些情况下方法也被称为函数,方法是独立的、可重用的功能包。它指定要执行的特定任务或例程。在面向对象范例中,方法描述具体类行为或能力。例如,类狗可具有方法咆哮。

大多数方法在本质上通常是同步的。方法交互遵循调用者/被调用者模式,其中调用者调用被调用者所提供的功能。在这种情况下,调用者对被调用者作出调用;被调用者进行某种计算并且然后将计算结果返回给调用者。调用者在被调用者执行某种计算时阻塞。然而,如果计算例如由于与网络或盘相关联的计算强度或等待时间而花费相对较长时间来执行,那么就会有问题。该问题可利用异步方法来解决。

一种异步方法不在执行计算时阻塞。调用者简单地继续并且被调用者启动。一旦被调用者完成,就采用供调用者和被调用者再次同步的机制。例如,被调用者可回调调用者。换言之,调用者调用被调用者并且被调用者用结果来回调调用者,而不是其中调用者调用被调用者且该调用者阻塞并等待的非对称调用。这尤其允许指定响应非常迅速的程序,因为调用者通常不会阻塞。

为了指定异步方法,程序员需要包括相当多的管道工程(plumbing)代码以注入异步性。在一个常规实施例中,这对应于创建委托和定义“开始调用”和“结束调用”方法。此处,“开始调用”启动异步操作而“结束调用”获取结果。异步方法可利用该设计模式来以各种方式指定。例如,在启动异步操作后,“结束调用”可被直接调用以获取结果或由回调函数来间接调用。

概述

以下呈现了简化的概述,以提供对所公开的主题的某些方面的基本理解。本概述不是广泛性的概观。它并不旨在标识关键/重要元素,也不旨在描绘所要求保护的主题的范围。其唯一的目的是以简化的形式来介绍一些概念,作为稍后提出的更详细描述的序言。

简而言之,本发明涉及生成异步方法和方法调用。根据本发明的一方面,用户可声明其应经由代码注释来产生异步方法的意图。例如,可向方法附加指示需要该方法的异步版本的声明性属性。根据另一方面,可以在同步方法调用点指定特殊函数以指示对异步调用的需求。提供了用于自动生成异步实现或调用的各种机制。换言之,开发者简单地标识其意图并自动生成实现。结果,开发者能够容易地采用异步方法来产生响应非常迅速的应用程序。

为实现上述及相关目的,在此结合以下描述和附图描述了所要求保护的主题的某些说明性方面。这些方面指示可实践本主题的各种方式,它们均落在所要求保护的主题的范围之内。当结合附图阅读以下详细描述时,本发明的其他优点和新颖特征将变得显而易见。

附图简述

图1是根据所公开的主题的一方面的异步方法生成系统的框图。

图2是根据本发明的一方面的代表性方法注释组件的框图。

图3是根据所公开的一方面的代表性异步编写器组件。

图4是根据本发明的一方面的其中异步代码在中间代码级生成的代码变换系统的框图。

图5是根据所公开的一方面的在源代码级生成异步代码的代码变换系统的框图。

图6是根据本发明的一方面的在执行时间产生异步代码的代码变换系统的框图。

图7是根据本发明的一方面的生成异步代码的代码加载器系统的框图。

图8是根据所公开的一方面的注释指定系统的框图。

图9是根据本发明的一方面的声明异步方法的方法的流程图。

图10是根据所公开的一方面的异步方法生成方法的流程图。

图11是根据本发明的一方面的异步调用生成方法的流程图。

图12是根据本发明的一方面的异步注释生成方法的流程图。

图13是示出用于本发明各方面的合适的操作环境的示意性框图。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200980107877.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top