使用雙重檢查鎖定習慣用於單例模式會更好嗎?或者一個同步的方法?使用雙重檢查鎖定習慣用於單身模式是否最佳?
即:
private static volatile ProcessManager singleton = null;
public static ProcessManager getInstance() throws Exception {
if (singleton == null) {
synchronized (MyClass.class) {
if (singleton == null) {
singleton = new ProcessManager();
}
}
}
return singleton;
}
或
private static processManager singleton = null;
public synchronized static processManager getInsatnce() throws Exception {
if(singleton == null) {
singleton = new processManager();
}
return singleton
}
有兩個嵌套IFS沒有任何東西之間,就像在你的第二段代碼中一樣,沒有任何意義。 – Jesper 2013-03-20 14:52:14
以上都不是,如[本答案](http://stackoverflow.com/a/15498689/1103872)中對您自己以前的問題所述。 – 2013-03-20 14:52:41
在你的第二個例子中,由於你已經在關鍵部分 – Grimmy 2013-03-20 14:54:52