是否可以创建一个通用的Singleton类,在任何给定的时间,只有一个实例在多个Java进程之间共享?
我知道在Android 2.1/2.2中有一个VMRuntime.getRuntime().setMinimumHeapSize供开发人员调整应用程序的起始堆大小,它是在BitmapFactory.decodeStream()中解决OutOfMemory错误的最有效的解决方案之一.
但是,从Android 2.3开始,这个VMRuntime类已从官方API中删除,有谁知道2.3中此功能的替代API?
我理解,由于线程安全问题,不应在构造函数中转义'this'引用,其中对象尚未完全构造,但"泄露"到其他对象.例如
public class TestClass{
public TestClass(){
StaticClass.addListener(this);
}
}
Run Code Online (Sandbox Code Playgroud)
如果我在另一个构造函数中调用默认构造函数,这是否保证构造对象的完整性并避免任何"this"引用转义问题?
public class TestClass{
public TestClass(){
}
public TestClass(String str){
this();
StaticClass.addListener(this);
}
}
Run Code Online (Sandbox Code Playgroud)