Patent ID: 9361224
Filing Date: 2016-06-07
CPC Classification: G06F

Claim Text:
1. A method of managing memory, the method comprising: identifying a plurality of regions in a heap storing one or more objects of a first type and one or more objects of a second type, each object of the first type including application data and management data, wherein the management data is used by a managed runtime to manage the application data; computing, based on a last-known memory address of an object of the first type, a memory address of an object of the second type, wherein the object of the second type stores a current memory address of the object of the first type; reading the current memory address stored in the object of the second type; locating the object of the first type at the read memory address; identifying, using a mutator thread, the last-known memory address of the object of the first type; determining whether the last-known memory address is located in a target collection region of the plurality of regions, wherein the plurality of regions includes the target collection region and a destination region, and objects of the first type located in the target collection region are evacuated from the target collection region to the destination region of the heap, and wherein the computing, the reading the current memory address, and the locating the object of the first type includes in response to a determination that the last-known memory address is located in the target collection region, the mutator thread performs the computing, the reading the current memory address, and the locating of the object of the first type.