可恢复的方法
    3.
    发明公开

    公开(公告)号:CN102859489A

    公开(公告)日:2013-01-02

    申请号:CN201180020904.5

    申请日:2011-04-26

    Applicant: 微软公司

    CPC classification number: G06F8/314

    Abstract: 提供了API,所述API处于编程语言的外部但是提供可插入到语言编译器中的功能。所提供的API调节与使用通用基于模式的方案进行的异步编程、迭代器或编写对称协同例程相关联的功能。在API中提供了若干类型的可恢复方法,所述可恢复方法可以应用于以传统程序代码编写的方法主体。以传统编程代码编写的方法主体中的在句法上可区分的控制点通过编译器使用外部API来调用该代码的变换。经变换的代码实现夹在经变换的代码的控制点之间的代码的暂停和恢复。里面具有控制点的方法内所包括的源代码被变换为使得该方法内的代码可以在分立的部分中执行,每个部分都在经变换的代码中的控制点处开始和结束。

    指令优化
    4.
    发明公开

    公开(公告)号:CN102609292A

    公开(公告)日:2012-07-25

    申请号:CN201110434430.0

    申请日:2011-12-12

    Applicant: 微软公司

    CPC classification number: G06F8/52 G06F8/443

    Abstract: 本发明涉及指令优化。程序可在执行之前,在运行时被优化以提高性能。被指定来执行的程序指令/操作可被记录并随后在执行之前,在运行时例如通过对指令执行变换来进行优化。例如,这样的优化可移除、重新排序和/或组合指令等。

    在线性栈上高效恢复协同例程

    公开(公告)号:CN102141937A

    公开(公告)日:2011-08-03

    申请号:CN201110008477.0

    申请日:2011-01-06

    Applicant: 微软公司

    CPC classification number: G06F9/4426 G06F9/4486 G06F9/485

    Abstract: 未挂起协同例程由机器调用栈机制来处理,其中该栈随着作出递归调用和从递归调用返回而增长和收缩。然而,在协同例程挂起时,执行附加的调用栈处理。发出挂起消息,并且调用栈的整个能恢复部分被移除并被复制到堆。将控制返回给驱动程序方法(恢复器)的帧被复制到调用栈,从而协同例程的恢复不会递归地重新激活整个调用栈。相反,恢复器仅重新激活被称为叶帧的最顶部或最当前帧。在协同例程挂起时,其不返回到其调用者,而是返回到已重新激活它的恢复器。

    后期绑定程序协助
    8.
    发明公开

    公开(公告)号:CN101689112A

    公开(公告)日:2010-03-31

    申请号:CN200880021201.2

    申请日:2008-06-06

    Applicant: 微软公司

    CPC classification number: G06F8/437 G06F8/33

    Abstract: 提供了用于集成开发环境(IDE)中的动态类型的程序协助。与后期绑定构造相关联的类型可以从静态信息中推断和/或从设计时执行中确定。协助然后可根据精确和/或推测类型来提供。此外,动态类型协助可以结合静态类型协助来采用以便于开发例如支持后期和早期绑定的程序。

    预测性和持久性事件流

    公开(公告)号:CN102200932B

    公开(公告)日:2015-07-15

    申请号:CN201110081368.1

    申请日:2011-03-25

    Applicant: 微软公司

    CPC classification number: G06F9/467

    Abstract: 本文中描述了预测性和持久性事件流。一种事件驱动的应用可以预测未来事件并从预测事件产生事件流。所产生的事件流可以作为预测操作来执行,直到预测被确认为正确或错误。预测的操作可以生成在预测被确认时可被呈现的结果。在某些情况下,可以在预测事件之前使用这些结果,而在其它情况下,可以高速缓存这些结果直到预测被确认。在某些情况下,当预测事件发生时,预测操作可以与实际事件流融合。在某些设备中,预测机制可以增强性能、实现原本可能困难的操作并且节约电池寿命或能量。

Patent Agency Ranking