Unrolling aggregation operations in asynchronous programming code having multiple levels in hierarchy
    1.
    发明授权
    Unrolling aggregation operations in asynchronous programming code having multiple levels in hierarchy 有权
    在具有多层次的异步编程代码中展开聚合操作

    公开(公告)号:US09239732B2

    公开(公告)日:2016-01-19

    申请号:US13028552

    申请日:2011-02-16

    摘要: One or more techniques and/or systems are disclosed for improving asynchronous programming execution at runtime. Asynchronous programming code can comprise more than one level of hierarchy, such as in an execution plan. Respective aggregation operations in a portion of the asynchronous programming code are unrolled, to create a single level iterative execution, by combining elements of the multi-level iterative execution of the asynchronous programming code. In this way, the aggregation operations are concatenated to local logic code for the aggregation operations. Thread context switching in the unrolled portion of asynchronous programming code is performed merely at an asynchronous operation, thereby mitigating unnecessary switches. Exceptions thrown during programming code can be propagated up to a top of a virtual callstack for the execution.

    摘要翻译: 公开了一种或多种技术和/或系统,用于在运行时改善异步编程执行。 异步编程代码可以包括多个层次结构,例如在执行计划中。 通过组合异步编程代码的多级迭代执行的元素来展开异步编程代码的一部分中的各个聚合操作,以创建单级迭代执行。 以这种方式,聚合操作被连接到用于聚合操作的本地逻辑代码。 异步编程代码的展开部分中的线程上下文切换仅在异步操作下执行,从而减轻不必要的开关。 在编程代码中抛出的异常可以传播到虚拟调用堆栈的顶部,以执行。

    ASYNCHRONOUS PROGRAMMING EXECUTION
    2.
    发明申请
    ASYNCHRONOUS PROGRAMMING EXECUTION 有权
    不同寻常的编程执行

    公开(公告)号:US20120210332A1

    公开(公告)日:2012-08-16

    申请号:US13028552

    申请日:2011-02-16

    IPC分类号: G06F9/46

    摘要: One or more techniques and/or systems are disclosed for improving asynchronous programming execution at runtime. Asynchronous programming code can comprise more than one level of hierarchy, such as in an execution plan. Respective aggregation operations in a portion of the asynchronous programming code are unrolled, to create a single level iterative execution, by combining elements of the multi-level iterative execution of the asynchronous programming code. In this way, the aggregation operations are concatenated to local logic code for the aggregation operations. Thread context switching in the unrolled portion of asynchronous programming code is performed merely at an asynchronous operation, thereby mitigating unnecessary switches. Exceptions thrown during programming code can be propagated up to a top of a virtual callstack for the execution.

    摘要翻译: 公开了一种或多种技术和/或系统,用于在运行时改善异步编程执行。 异步编程代码可以包括多个层次结构,例如在执行计划中。 通过组合异步编程代码的多级迭代执行的元素来展开异步编程代码的一部分中的各个聚合操作,以创建单级迭代执行。 以这种方式,聚合操作被连接到用于聚合操作的本地逻辑代码。 异步编程代码的展开部分中的线程上下文切换仅在异步操作下执行,从而减轻不必要的开关。 在编程代码中抛出的异常可以传播到虚拟调用堆栈的顶部,以执行。