lazyInit
initialized和value的顺序保证了可见性
注意他和《Effective Java》P250上的区别
书本上之所以在书本的开始处采用局部变量
FieldType result=field;
这个变量的作用是确保field只在已近被初始化的情况下读取一次
而这里之所以没这样做,是为了保证可见性
不对应该也可以优化
Volatile明确的语义
Suppliers.memoriz
假设某个服务启动比较耗时or比较重
lazyInit
initialized和value的顺序保证了可见性
注意他和《Effective Java》P250上的区别
书本上之所以在书本的开始处采用局部变量
FieldType result=field;
这个变量的作用是确保field只在已近被初始化的情况下读取一次
而这里之所以没这样做,是为了保证可见性
不对应该也可以优化
Volatile明确的语义
Suppliers.memoriz
假设某个服务启动比较耗时or比较重