System and method for supporting dynamic deployment of executable code in a distributed computing environment
US-2016092205-A1 · Mar 31, 2016 · US
US9798569B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9798569-B2 |
| Application number | US-201615043695-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 15, 2016 |
| Priority date | Feb 15, 2016 |
| Publication date | Oct 24, 2017 |
| Grant date | Oct 24, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system for and method of retrieving values of captured local variables for a lambda function in Java. In one embodiment, the system includes: (1) a Java virtual machine and (2) a captured variable retriever that interacts with the Java virtual machine and configured to retrieve a signature of the lambda function from a classfile of a Java class containing the lambda function, compare the signature with a declaration of the lambda function to identify arguments corresponding to the captured local variables, modify the lambda function and cause the Java virtual machine to execute the modified lambda function.
Opening claim text (preview).
What is claimed is: 1. A system for retrieving a value of a captured local variable for a lambda function in Java, comprising: a Java virtual machine executed on a host processor; and a captured variable retriever that interacts with said Java virtual machine and configured to retrieve a signature of said lambda function from a classfile of a Java class containing said lambda function, compare said signature with a declaration of said lambda function to identify an argument corresponding to said captured local variable, modify said lambda function using said argument and cause said Java virtual machine to execute said modified lambda function with a null value passed to each corresponding formal parameter of said lambda function. 2. The system as recited in claim 1 wherein said captured variable retriever is further configured to retrieve and return a value of said argument when said Java virtual machine executes said modified lambda function and set said captured local variable to said value. 3. The system as recited in claim 1 wherein said captured variable retriever is further configured to pass said lambda function along with value of said captured local variable to a compiler that compiles said lambda function into an intermediate representation. 4. The system as recited in claim 3 wherein said captured variable retriever is further configured to invoke an optimizer that optimizes said intermediate representation and generates code that can execute on a device. 5. The system as recited in claim 4 wherein said device is a graphics processing unit. 6. The system as recited in claim 1 wherein said lambda function includes multiple captured local variables and said captured variable retriever is configured to retrieve values of all said multiple captured local variables. 7. A method of retrieving a value of a captured local variable for a lambda function in Java, comprising: retrieving a signature of said lambda function from a classfile of a Java class containing said lambda function; comparing said signature with a declaration of said lambda function to identify an argument corresponding to said captured local variable; modify said lambda function using said argument; and causing a Java virtual machine to execute said modified lambda function with a null value passed to each corresponding formal parameter of said lambda function. 8. The method as recited in claim 7 wherein said causing comprises: retrieving and returning a value of said argument; and setting said captured local variable to said value. 9. The method as recited in claim 7 further comprising passing said lambda function along with value of said captured local variable to a compiler that compiles said lambda function into an intermediate representation. 10. The method as recited in claim 9 further comprising invoking an optimizer to optimize said intermediate representation and generate code that can execute on a device. 11. The method as recited in claim 10 wherein said device is a graphics processing unit. 12. The method as recited in claim 7 wherein said lambda function includes multiple captured local variables and said method further comprises retrieving values of all said multiple captured local variables.
Runtime code conversion or optimisation · CPC title
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
Creating, deleting, cloning virtual machine instances · CPC title
Hypervisor-specific management and integration aspects · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.