摘要 |
<p>Aspects for conservative garbage collecting are disclosed. In one aspect, a heap of objects is generated during an execution of a script, and script objects in an unexecuted portion are traced to corresponding memory locations on the heap. The heap is then marked concurrently with executing the script such that a marked heap includes reachable and unreachable objects. Memory allocated to the unreachable objects is then freed concurrently with executing the script based on the marking. In another aspect, an object graph associated with a call stack is generated and traced such that script objects in an unexecuted portion of the stack are traced to corresponding memory locations on a heap. Heap objects are marked concurrently with executing the stack so that a marked heap includes reachable and unreachable objects. Memory allocated to the unreachable objects is then cleared concurrently with executing the stack based on the marked heap.</p> |