diff --git a/singleton/src/main/java/com/iluwatar/InitializingOnDemandHolderIdiom.java b/singleton/src/main/java/com/iluwatar/InitializingOnDemandHolderIdiom.java index 0624b9b96..eb83c357b 100644 --- a/singleton/src/main/java/com/iluwatar/InitializingOnDemandHolderIdiom.java +++ b/singleton/src/main/java/com/iluwatar/InitializingOnDemandHolderIdiom.java @@ -3,6 +3,13 @@ package com.iluwatar; import java.io.Serializable; /** + * The Initialize-on-demand-holder idiom is a secure way of + * creating lazy initialize singleton Object in Java. + * refer to "The CERT Oracle Secure Coding Standard for Java" + * By Dhruv Mohindra, Robert C. Seacord p.378 + * + * Singleton objects usually are heavy to create and sometimes need to serialize them. + * This class also shows how to preserve singleton in Serialized version of singleton. * * @author mortezaadi@gmail.com * diff --git a/singleton/src/main/java/com/iluwatar/ThreadSafeDoubleCheckLocking.java b/singleton/src/main/java/com/iluwatar/ThreadSafeDoubleCheckLocking.java index 47eafc52d..53216f341 100644 --- a/singleton/src/main/java/com/iluwatar/ThreadSafeDoubleCheckLocking.java +++ b/singleton/src/main/java/com/iluwatar/ThreadSafeDoubleCheckLocking.java @@ -1,6 +1,10 @@ package com.iluwatar; /** + * Double check locking + * + * http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html + * * Broken under Java 1.4. * @author mortezaadi@gmail.com *