Reformat rest of the design patterns - Issue #224
This commit is contained in:
double-checked-locking/src
main
java
com
iluwatar
doublechecked
test
java
com
iluwatar
doublechecked
locking
double-dispatch/src
main
java
test
java
com
iluwatar
doubledispatch
event-aggregator/src
main
java
test
java
com
iluwatar
event
aggregator
execute-around/src
main
java
com
iluwatar
execute
test
java
com
iluwatar
execute
around
facade/src
main
java
test
java
com
iluwatar
facade
factory-method/src
main
java
test
java
com
iluwatar
factory
method
fluentinterface/src/main/java/com/iluwatar/fluentinterface/app
flux/src
main
java
test
java
com
iluwatar
flux
app
flyweight/src
main
java
test
java
com
iluwatar
flyweight
half-sync-half-async/src
main
java
com
iluwatar
halfsynchalfasync
test
java
com
iluwatar
halfsynchalfasync
intercepting-filter/src
main
java
test
java
com
iluwatar
intercepting
filter
interpreter/src
main
java
test
java
com
iluwatar
interpreter
iterator/src
main
java
test
java
com
iluwatar
iterator
layers/src
main
java
test
java
com
iluwatar
layers
lazy-loading/src
main
java
com
iluwatar
test
java
com
iluwatar
lazy
mediator/src
main
java
test
java
com
iluwatar
mediator
memento/src
message-channel/src
model-view-controller/src
main
java
com
iluwatar
test
java
com
iluwatar
model
view
controller
model-view-presenter/src
main
java
com
test
java
com
iluwatar
model
view
presenter
monostate/src
main
java
com
iluwatar
test
java
com
iluwatar
monostate
multiton/src
main
java
com
iluwatar
test
java
com
iluwatar
multiton
naked-objects
dom
src
main
java
domainapp
dom
app
modules
test
java
domainapp
dom
modules
fixture
src
main
java
domainapp
fixture
integtests
src
test
java
domainapp
integtests
bootstrap
specglue
specs
webapp
src
main
java
domainapp
webapp
null-object/src
main
java
com
iluwatar
test
java
com
iluwatar
nullobject
object-pool/src
main
java
com
iluwatar
test
java
com
iluwatar
object
pool
poison-pill/src
main
java
test
java
com
iluwatar
poison
pill
private-class-data/src
main
java
com
iluwatar
privateclassdata
test
java
com
iluwatar
privateclassdata
property/src
main
java
com
iluwatar
test
java
com
iluwatar
property
prototype/src
main
java
test
java
com
iluwatar
prototype
proxy/src
main
java
com
test
java
com
iluwatar
proxy
reactor/src
main
java
com
iluwatar
reactor
test
java
com
iluwatar
reactor
app
repository/src
main
java
com
iluwatar
repository
test
java
com
iluwatar
repository
resource-acquisition-is-initialization/src
main
java
com
iluwatar
resource
acquisition
is
initialization
test
java
com
iluwatar
resource
acquisition
is
initialization
servant/src
main
java
com
iluwatar
test
java
com
iluwatar
servant
service-layer/src
main
java
com
iluwatar
test
java
com
iluwatar
servicelayer
app
service-locator/src
main
java
com
iluwatar
test
java
com
iluwatar
servicelocator
singleton/src
main
java
test
java
com
iluwatar
specification/src
main
java
com
test
java
com
iluwatar
specification
app
state/src
main
java
com
test
java
com
iluwatar
state
step-builder/src
main
java
com
iluwatar
test
java
com
iluwatar
stepbuilder
strategy/src
main
java
test
java
com
iluwatar
strategy
template-method/src
main
java
com
iluwatar
test
java
com
iluwatar
templatemethod
thread-pool/src
main
java
com
iluwatar
test
java
com
iluwatar
threadpool
tolerant-reader/src
main
java
com
iluwatar
test
java
com
iluwatar
tolerantreader
visitor/src
main
java
test
java
com
iluwatar
visitor
@ -2,23 +2,22 @@ package com.iluwatar.lazy.loading;
|
||||
|
||||
/**
|
||||
*
|
||||
* Same as HolderNaive but with added synchronization.
|
||||
* This implementation is thread safe, but each {@link #getHeavy()}
|
||||
* call costs additional synchronization overhead.
|
||||
* Same as HolderNaive but with added synchronization. This implementation is thread safe, but each
|
||||
* {@link #getHeavy()} call costs additional synchronization overhead.
|
||||
*
|
||||
*/
|
||||
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;
|
||||
}
|
||||
private Heavy heavy;
|
||||
|
||||
public HolderThreadSafe() {
|
||||
System.out.println("HolderThreadSafe created");
|
||||
}
|
||||
|
||||
public synchronized Heavy getHeavy() {
|
||||
if (heavy == null) {
|
||||
heavy = new Heavy();
|
||||
}
|
||||
return heavy;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user