Providing execution context in continuation based runtimes
First Claim
1. A computer-implemented method for controlling a computer system by providing execution properties in an activity'"'"'s execution context in a continuation based runtime, the computer-implemented method comprising:
- an act of instantiating a parent activity configured for execution in a continuation based runtime, the parent activity comprising one or more child activities configured to perform pulses of work, the parent activity being further configured to add execution properties to an execution context, the execution context comprising those execution properties that are available to the parent and child activities during execution;
an act of adding one or more execution properties to the parent activity'"'"'s execution context to generate a modified execution context which includes execution properties that extend the functionality of the parent and child activities, the parent and child activities being configured to use the added execution properties during execution, the added execution properties comprising corresponding identifiers that identify the added execution properties;
an act of executing the parent activity including the one or more child activities within the modified execution context in the continuation based runtime, the modified execution context including the added execution properties that are available to the parent and any child activities during execution; and
for the added one or more execution properties implementing an interface that(i) provides execution of a subtree of activities, and(ii) allows the parent activity to implement thread local storage setup and cleanup during execution of the subtree of activities.
2 Assignments
0 Petitions
Accused Products
Abstract
In an embodiment, a computer system instantiates a parent activity configured for execution in a continuation based runtime. The parent activity includes various child activities configured to perform pulses of work. The parent activity is also configured to add execution properties to an execution context. The computer system adds execution properties to the parent activity'"'"'s execution context to generate a modified execution context which includes execution properties that extend the functionality of the parent and child activities. The added execution properties include corresponding identifiers that identify the added execution properties. The computer system also executes the parent activity including the various child activities within the modified execution context in the continuation based runtime. The modified execution context includes the added execution properties that are available to the parent and any child activities during execution, where at least one child activity implements functionality provided by the added execution properties.
-
Citations
27 Claims
-
1. A computer-implemented method for controlling a computer system by providing execution properties in an activity'"'"'s execution context in a continuation based runtime, the computer-implemented method comprising:
-
an act of instantiating a parent activity configured for execution in a continuation based runtime, the parent activity comprising one or more child activities configured to perform pulses of work, the parent activity being further configured to add execution properties to an execution context, the execution context comprising those execution properties that are available to the parent and child activities during execution; an act of adding one or more execution properties to the parent activity'"'"'s execution context to generate a modified execution context which includes execution properties that extend the functionality of the parent and child activities, the parent and child activities being configured to use the added execution properties during execution, the added execution properties comprising corresponding identifiers that identify the added execution properties; an act of executing the parent activity including the one or more child activities within the modified execution context in the continuation based runtime, the modified execution context including the added execution properties that are available to the parent and any child activities during execution; and for the added one or more execution properties implementing an interface that (i) provides execution of a subtree of activities, and (ii) allows the parent activity to implement thread local storage setup and cleanup during execution of the subtree of activities. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer program product for implementing within a computer system a method for bridging the execution of a subtree of activities in a continuation based runtime with the context model of the underlying runtime, the computer program product comprising one or more physical storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of the computing system, cause the computing system to perform the method, the method comprising:
-
an act of an execution property implementing a thread-local store (TLS) interface, wherein the interface is configured to provide a mechanism for initiating TLS setup and cleanup for a subtree of activities, the setup and cleanup being functions usable during the execution of the subtree of activities by a continuation based runtime; an act of registering the TLS interface with the continuation based runtime, such that the TLS interface is usable when executing the subtree of activities; prior to executing a pulse of work associated with the at least one of the activities, an act of the continuation based runtime calling the setup function of the TLS interface for each execution property of the activity that is to be executed; an act of the execution property modifying the TLS to access one or more objects dependant on TLS with the continuation based runtime; and an act of the activity accessing the one or more TLS-dependant objects using the TLS interface; after execution of the pulse of work, an act of the continuation based runtime calling the cleanup function of the TLS interface to undo the modifications made to the TLS by the setup function. - View Dependent Claims (18, 19)
-
-
20. One or more physical storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of a computer system cause the computer system to implement a method for providing execution properties in an activity'"'"'s execution context in a continuation base runtime, and wherein the method that is executed is comprised of:
-
an act of instantiating a parent activity configured for execution in a continuation based runtime, the parent activity comprising one or more child activities configured to perform pulses of work, the parent activity being further configured to add execution properties to an execution context, the execution context comprising those execution properties that are available to the parent and child activities during execution; an act of adding one or more execution properties to the parent activity'"'"'s execution context to generate a modified execution context which includes execution properties that extend the functionality of the parent and child activities during runtime, the parent and child activities being configured to use the added execution properties during execution, the added execution properties comprising corresponding identifiers that identify the added execution properties; an act of executing the parent activity including the one or more child activities within the modified execution context in the continuation based runtime, the modified execution context including the added execution properties that are available to the parent and any child activities during execution, wherein at least one child activity implements functionality provided by the added execution properties; and the added one or more execution properties implementing an interface that (i) provides execution of a subtree of activities, and (ii) allows the parent activity to implement thread local storage setup and cleanup during execution of the subtree of activities. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
Specification