如果我有以下方法;是一個電話Calendar.getInstance()
線程安全?Calendar.getInstance線程安全
public Date currentTime() {
Date d = null;
synchronized(this){
d = Calendar.getInstance().getTime();
}
return d;
}
我的理解是Calendar.getInstance()
不是線程安全,這樣下面的方法不能是線程安全的。這是對的嗎?
public Date currentTime() {
return Calendar.getInstance().getTime();
}
我明白Joda-Time被宣傳爲日期時間API的最佳實踐,但在這裏我堅持標準java.util.Date/Calendar類。
爲什麼你不能獲得日曆一次,並在外部類中保存該日曆,然後在getTime()中使用已有的引用? – Rob
你無法使用[Joda-Time](http://www.joda.org/joda-time/)是一種恥辱。線程安全是Joda-Time的主要設計目標。如果您可以使用Java 8,請查找受到啓發的新捆綁[java.time。*包](http://download.java.net/jdk8/docs/api/java/time/package-summary.html)由Joda-Time定義並由JSR 310定義。 –