DescriptionOilpan: Support nested pre-finalizers
The current problematic constraint of the pre-finalizer is that it is not nestable.
This CL supports nested pre-finalizers like this:
class A : public GarbageCollected<A> {
USING_PRE_FINALIZER(A, dispose);
A() { ThreadState::current()->registerPreFinalizer(this); }
void dispose() { }
};
class B : public GarbageCollectedMixin {
USING_PRE_FINALIZER(B, dispose);
B() { ThreadState::current()->registerPreFinalizer(this); }
void dispose() { }
};
class C : public A, public B {
USING_PRE_FINALIZER(C, dispose);
C() { ThreadState::current()->registerPreFinalizer(this); }
void dispose() { }
};
BUG=420515
TEST=HeapTest.NestedPrefinalizers
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=197886
Patch Set 1 #
Total comments: 4
Patch Set 2 : #Patch Set 3 : #Patch Set 4 : #
Total comments: 14
Patch Set 5 : #Patch Set 6 : #
Messages
Total messages: 16 (5 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||