Currently when the GC heap is destroyed, all memory is simply dropped. Instead, all finalizers should run before dropping the backing memory.