{"json_modified": "2016-03-28T08:08:52.647707", "uuid": "696c0e34-dcc5-4aaf-9313-931af2f01cd2", "title": "MMgc", "url": "/en-US/docs/Archive/MMgc", "tags": ["Tamarin"], "translations": [{"uuid": "ebfa8f26-7ad0-4d30-ae1b-4bec5dd2201b", "title": "MMgc", "url": "/zh-CN/docs/MMgc", "tags": [], "summary": "MMgc is the Tamarin (n\u00e9e Macromedia) garbage collector, a memory management library that has been built as part of the AVM2/Tamarin effort. It is a static library that is linked into the Flash Player but kept separate, and can be incorporated into other programs.", "localization_tags": [], "locale": "zh-CN", "last_edit": "2014-08-05T02:01:13", "review_tags": []}], "modified": "2015-10-21T22:23:34", "label": "MMgc", "localization_tags": [], "locale": "en-US", "id": 9277, "last_edit": "2011-02-21T14:53:25", "summary": "MMgc is the Tamarin (n\u00e9e Macromedia) garbage collector, a memory management library that has been built as part of the AVM2/Tamarin effort. It is a static library that is linked into the Flash Player but kept separate, and can be incorporated into other programs.", "sections": [{"id": "Using_MMgc", "title": "Using MMgc"}, {"id": "Managed_vs._Unmanaged_Memory", "title": "Managed vs. Unmanaged Memory"}, {"id": "MMgc_namespace", "title": "MMgc namespace"}, {"id": "GC_class", "title": "GC class"}, {"id": "GCAlloc_GCFree", "title": "GC::Alloc, GC::Free"}, {"id": "GCGetGC", "title": "GC::GetGC"}, {"id": "Base_Classes", "title": "Base Classes"}, {"id": "GCObject", "title": "GCObject"}, {"id": "GCObjectGetWeakRef", "title": "GCObject::GetWeakRef"}, {"id": "GCFinalizedObject", "title": "GCFinalizedObject"}, {"id": "RCObject", "title": "RCObject"}, {"id": "GCRoot", "title": "GCRoot"}, {"id": "Allocating_objects", "title": "Allocating objects"}, {"id": "DWBDRCDRCWB", "title": "DWB/DRC/DRCWB"}, {"id": "DWB", "title": "DWB"}, {"id": "DRC", "title": "DRC"}, {"id": "DRCWB", "title": "DRCWB"}, {"id": "When_are_the_macros_not_needed", "title": "When are the macros not needed?"}, {"id": "Zeroing_RCObjects", "title": "Zeroing RCObjects"}, {"id": "Poisoned_Memory", "title": "Poisoned Memory"}, {"id": "Finalizers", "title": "Finalizers"}, {"id": "Finalizer_Access_Rules", "title": "Finalizer Access Rules"}, {"id": "Threading", "title": "Threading"}, {"id": "Troubleshooting_MMgc", "title": "Troubleshooting MMgc"}, {"id": "Dealing_with_bugs", "title": "Dealing with bugs"}, {"id": "Forgetting_a_write_barrier", "title": "Forgetting a write barrier"}, {"id": "Forgetting_a_DRC", "title": "Forgetting a DRC"}, {"id": "Wrong_macro", "title": "Wrong macro"}, {"id": "Unmarked_unmanaged_memory", "title": "Unmarked unmanaged memory"}, {"id": "Finding_missing_write_barriers", "title": "Finding missing write barriers"}, {"id": "Debugging_Aids", "title": "Debugging Aids"}, {"id": "Underwriteoverwrite_detection", "title": "Underwrite/overwrite detection"}, {"id": "Leak_detection_(for_unmanaged_memory)", "title": "Leak detection (for unmanaged memory)"}, {"id": "Deleted_object_poisoning_and_write_detection", "title": "Deleted object poisoning and write detection"}, {"id": "Stack_traces_(walk_stack_frame_and_lookup_IPs)", "title": "Stack traces (walk stack frame and lookup IPs)"}, {"id": "Allocation_traces_deletion_traces_etc.", "title": "Allocation traces, deletion traces etc."}, {"id": "Memory_Profiler", "title": "Memory Profiler"}, {"id": "Other_Profiling_Tools", "title": "Other Profiling Tools"}, {"id": "How_MMgc_works", "title": "How MMgc works"}, {"id": "MarkSweep", "title": "Mark/Sweep"}, {"id": "One_pass", "title": "One pass"}, {"id": "Conservative_Collection", "title": "Conservative Collection"}, {"id": "Deferred_Reference_Counting_(DRC)", "title": "Deferred Reference Counting (DRC)"}, {"id": "Classic_Reference_Counting", "title": "Classic Reference Counting"}, {"id": "Problem_Circular_References", "title": "Problem: Circular References"}, {"id": "Enter_Deferred_Reference_Counting", "title": "Enter Deferred Reference Counting"}, {"id": "Zero_Count_Table", "title": "Zero Count Table"}, {"id": "Incremental_Collection", "title": "Incremental Collection"}, {"id": "Mark_consistency", "title": "Mark consistency"}, {"id": "Illustration_of_Write_Barriers", "title": "Illustration of Write Barriers"}, {"id": "Detecting_missing_Write_Barriers", "title": "Detecting missing Write Barriers"}, {"id": "Write_Barrier_Implementation", "title": "Write Barrier Implementation"}, {"id": "GCHeap", "title": "GCHeap"}, {"id": "GCHeap's_reservecommit_strategy", "title": null}, {"id": "When_memory_mapping_is_not_available", "title": "When memory mapping is not available"}], "slug": "Archive/MMgc", "review_tags": []}