24 lines
489 B
Java
Raw Normal View History

package com.iluwatar.lazy.loading;
2015-04-10 20:24:16 +03:00
/**
*
* Same as HolderNaive but with added synchronization. This implementation is thread safe, but each
* {@link #getHeavy()} call costs additional synchronization overhead.
2015-04-10 20:24:16 +03:00
*
*/
public class HolderThreadSafe {
private Heavy heavy;
public HolderThreadSafe() {
System.out.println("HolderThreadSafe created");
}
public synchronized Heavy getHeavy() {
if (heavy == null) {
heavy = new Heavy();
}
return heavy;
}
2015-04-10 20:24:16 +03:00
}