项目: Java, JNI (C++), Android.
我将通过创建一个托管包装类来管理本地的C++对象生命周期,该类将持有指向本地对象的指针(作为长整型成员)并将在其重写的finalize()方法中删除本地对象。详情请参见此问题。
C++对象不消耗其他类型的资源,只占用内存。对象的内存占用量并不是非常高,但它比Java中的64位长整型要高得多。有没有办法告诉Java的GC,我的包装类负责不止一个长整型值,并且在运行垃圾回收之前创建数百万这样的对象不是一个好主意?在.NET中,有一个GC的AddMemoryPressure()方法,专门用于此目的。在Java中是否有类似的方法呢?