Using compiler-generated tasks to represent programming elements
    61.
    发明授权
    Using compiler-generated tasks to represent programming elements 有权
    使用编译器生成的任务来表示编程元素

    公开(公告)号:US08572585B2

    公开(公告)日:2013-10-29

    申请号:US13162328

    申请日:2011-06-16

    IPC分类号: G06F9/45

    CPC分类号: G06F8/45

    摘要: The present invention extends to methods, systems, and computer program products for representing various programming elements with compiler-generated tasks. Embodiments of the invention enable access to the future state of a method through a handle to a single and composable task object. For example, an asynchronous method is rewritten to generate and return a handle to an instance of a builder object, which represents one or more future states of the asynchronous method. Information about operation of the asynchronous method is then passed through the handle. Accordingly, state of the asynchronous method is trackable prior to and after completing.

    摘要翻译: 本发明扩展到用于用编译器生成的任务表示各种编程元素的方法,系统和计算机程序产品。 本发明的实施例能够通过对单个和可组合任务对象的句柄来访问方法的未来状态。 例如,重写异步方法以生成并返回对构建器对象的实例的句柄,该对象表示异步方法的一个或多个未来状态。 关于异步方法的操作的信息然后通过句柄传递。 因此,异步方法的状态在完成之前和之后是可追踪的。

    PATTERN-BASED COMPILATION OF ASYNCHRONOUS CONSUMPTION
    63.
    发明申请
    PATTERN-BASED COMPILATION OF ASYNCHRONOUS CONSUMPTION 有权
    基于模式的异步消费的编译

    公开(公告)号:US20120324431A1

    公开(公告)日:2012-12-20

    申请号:US13162288

    申请日:2011-06-16

    IPC分类号: G06F9/45

    CPC分类号: G06F8/456

    摘要: The present invention extends to methods, systems, and computer program products for transforming source code to await execution of asynchronous operations. Embodiments of the invention simplify authoring and use of asynchronous methods, by generating statements that use well-defined awaitable objects to await completion of asynchronous operations. For example, a computer system can transform a statement that requests to await the completion of an asynchronous operation into a plurality of statements that use a predefined pattern of members of an awaitable object corresponding the asynchronous operation. The pattern can include one or more members configured to return a completion status of the asynchronous operation, one or more members configured to resume execution of the asynchronous method at a resumption point when the asynchronous operation completes, and one or more members configured to retrieve completion results. Accordingly, the plurality of statements can use these members to await execution of the asynchronous operation.

    摘要翻译: 本发明扩展到用于转换源代码以等待执行异步操作的方法,系统和计算机程序产品。 本发明的实施例简化了异步方法的编写和使用,通过生成使用明确定义的等待对象等待完成异步操作的语句。 例如,计算机系统可以将请求等待完成异步操作的语句转换为使用对应于异步操作的可等待对象的成员的预定义模式的多个语句。 该模式可以包括被配置为返回异步操作的完成状态的一个或多个成员,被配置成在异步操作完成时在恢复点恢复异步方法的执行的一个或多个成员以及被配置为检索完成的一个或多个成员 结果。 因此,多个语句可以使用这些成员来等待异步操作的执行。

    AUTOMATED CLIENT/SERVER OPERATION PARTITIONING
    67.
    发明申请
    AUTOMATED CLIENT/SERVER OPERATION PARTITIONING 有权
    自动客户端/服务器操作分区

    公开(公告)号:US20090327220A1

    公开(公告)日:2009-12-31

    申请号:US12145523

    申请日:2008-06-25

    IPC分类号: G06F7/06 G06F17/30

    摘要: An operation (such as a relational query) may be processed on a processing engine (such as a relational database server) on behalf of a client. A conventional processing involves the delivery of the operation to the processing engine, which executes the entire operation to completion and returns a result data set. It may be more efficient to allocate part of the operation to be performed on the client, but a developer may be unable or unavailable to rewrite the operation in a distributed manner. Instead, the operation may be automatically partitioned into a pre-engine client portion, a processing engine portion, and a client portion, and the instructions of each portion may be automatically allocated respectively to the client, the server, and the client. The partitioning may be adjusted to conserve computing resources, such as bandwidth and storage, and the instructions may be reordered to improve the processing of the operation.

    摘要翻译: 可以在处理引擎(例如关系数据库服务器)上代表客户端处理操作(例如关系查询)。 常规处理涉及将操作传递到处理引擎,该处理引擎执行整个操作以完成并返回结果数据集。 分配要在客户端上执行的部分操作可能更有效,但开发人员可能无法或不可以以分布式方式重写操作。 相反,可以将操作自动分割为预引擎客户端部分,处理引擎部分和客户端部分,并且可以将每个部分的指令分别自动分配给客户端,服务器和客户端。 可以调整分区以节省诸如带宽和存储的计算资源,并且可以重新排序指令以改进操作的处理。

    STATIC TYPE FOR LATE BINDING
    68.
    发明申请
    STATIC TYPE FOR LATE BINDING 审中-公开
    用于最后绑定的静态类型

    公开(公告)号:US20080282238A1

    公开(公告)日:2008-11-13

    申请号:US11746995

    申请日:2007-05-10

    IPC分类号: G06F9/44

    CPC分类号: G06F8/437

    摘要: A static type computer language provides optional dynamic typing triggered by a unique static type. The unique static type can be utilized anywhere other types can be employed to identify programmatic elements that are late bound. As a result, static types can be analyzed at compile time while deferring analysis of dynamic types until runtime.

    摘要翻译: 静态类型的计算机语言提供了由唯一静态类型触发的可选动态类型。 独特的静态类型可以在任何其他类型可用于识别晚期限制的程序元素的地方使用。 因此,可以在编译时分析静态类型,同时推迟对动态类型的分析,直到运行时为止。

    PARTIAL METHODS
    70.
    发明申请
    PARTIAL METHODS 有权
    部分方法

    公开(公告)号:US20080196014A1

    公开(公告)日:2008-08-14

    申请号:US11674333

    申请日:2007-02-13

    IPC分类号: G06F9/45

    CPC分类号: G06F8/00

    摘要: Partial methods enable separation of method declaration and/or calls from method implementation. A partial method specifies a signature of a join or hook point in a class. Calls to a partial method specify a join or hook point in code that can optionally be linked with an actual method implementation of the same signature. Separate method implementations or other code related to a partial method are injected into a single program prior to execution. Unimplemented partial methods are treated as no operation instructions or otherwise ignored.

    摘要翻译: 部分方法使得方法实现能够分离方法声明和/或调用。 部分方法指定类中的连接或钩点的签名。 调用部分方法指定可以可选地与相同签名的实际方法实现链接的代码中的连接或挂接点。 在执行之前,将单独的方法实现或与部分方法相关的其他代码注入到单个程序中。 未实现的部分方法被视为无操作指令或以其他方式忽略。