On 12/03/17 16:40, Philip Race wrote: > > On 3/12/17, 3:07 AM, Andrew Haley wrote: >> I guess "difficulty in properly triggering GC for non-memory resource >> exhaustion" is closest to what I just described. > > This has long been an issue in the Java client area where native desktop > resources or the like need to be managed carefully, but it is not just > native window handles but any resource not managed by GC. > > So more precisely "non-Java Heap" resource exhaustion as you could > allocate 2GB of native heap and the GC would not care at all if > it were tied solely to a 32 byte finalizable Java object.
Indeed. For what it's worth, I have a plan to design and implement a mechanism to allow native memory to be safely deallocated without using finalization, but it's proving rather difficult to find a nice way to design the API and make it fit the JMM. I hope to get it done by JDK 10. :-) Andrew.