]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | # ifndef GC_H |
2 | # include "gc.h" | |
3 | # endif | |
4 | ||
5 | /* | |
6 | * Invoke all remaining finalizers that haven't yet been run. | |
7 | * This is needed for strict compliance with the Java standard, | |
8 | * which can make the runtime guarantee that all finalizers are run. | |
9 | * This is problematic for several reasons: | |
10 | * 1) It means that finalizers, and all methods calle by them, | |
11 | * must be prepared to deal with objects that have been finalized in | |
12 | * spite of the fact that they are still referenced by statically | |
13 | * allocated pointer variables. | |
14 | * 1) It may mean that we get stuck in an infinite loop running | |
15 | * finalizers which create new finalizable objects, though that's | |
16 | * probably unlikely. | |
17 | * Thus this is not recommended for general use. | |
18 | */ | |
19 | void GC_finalize_all(); | |
20 | ||
21 |