T
- 被加载对象类型public abstract class AtomicLoader<T> extends Object implements Loader<T>, Serializable
AtomicReference
实懒加载,过程如下
1. 检查引用中是否有加载好的对象,有则返回 2. 如果没有则初始化一个对象,并再次比较引用中是否有其它线程加载好的对象,无则加入,有则返回已有的当对象未被创建,对象的初始化操作在多线程情况下可能会被调用多次(多次创建对象),但是总是返回同一对象
Constructor and Description |
---|
AtomicLoader() |
Modifier and Type | Method and Description |
---|---|
T |
get()
获取一个对象,第一次调用此方法时初始化对象然后返回,之后调用此方法直接返回原对象
|
protected abstract T |
init()
初始化被加载的对象
如果对象从未被加载过,调用此方法初始化加载对象,此方法只被调用一次 |
Copyright © 2024. All rights reserved.