毎秒 1000 個のエンティティを作成するプロセスがあるとします。これらのエンティティごとに、セッターを呼び出します。
newEntity.setDate(new Date());
1) 2 つのエンティティが同じ日付を受け取る可能性はありますか? または、日付フィールドに対して一意の識別子の効果が得られると想定しても安全ですか?
2) 質問 #1 の答えが「はい」の場合 - ちょっとした調整をしましょう: 関数を作成しましょう:
public static synchronized Date getDate() {
return new Date();
}
それは今動作しますか?
newEntity.setDate(getDate());
3) どうですか
System.nanoTime()?
編集 4)どうですか:
public static synchronized Date getDate() {
Thread.Sleep(1000);
return new Date();
}
ありがとう。