基本上我在developers.android.com上通过多线程指南,当我看到让我感到困惑的事情时...(我正在审视这篇文章
http://developer.android.com/training/multiple-threads/create-threadpool.html
)
在Define the Thread Pool Class部分中,他们提到该类应具有私有构造函数以使其成为单例,但作者声称通过这样做,代码不需要同步。我很困惑为什么这是线程安全的,因为它是单例,它仍然可以被多个线程同时引用,导致内存一致性错误等。
答案 0 :(得分:3)
他们的意思是:
创建该类的唯一实例是:
static
{
// Creates a single static instance of PhotoManager
sInstance = new PhotoManager();
}
静态{...}块是线程安全的,因为它是由类加载器执行的,它是同步的