单例模式及数组也能无锁:AtomicIntegerArray
2023-12-24 21:27:33
减少锁持有时间
锁粗化
锁偏向
轻量级锁
自旋锁
锁消除
ThreadLocal的简单使用
和AtomicInteger类似的还有AtomicLong用来代表long型数据
AtomicBoolean表示bollean型数据
AtomicReference表示对象引用。
数组也能无锁:AtomicIntegerArray
AtomicIntegerArray
AtomicLongArray
AtomicReferenceArray
让普通变量也享受原子操作:AtomicIntegerFieldUpdater
它是一种对象创建模式,用于产生一个对象的具体实例,它可用确保系统中一个类
只产生一个实例。在java中,这种行为能带来两大好处:
1.对于频繁使用的对象,可用省略new操作花费的时间,这对于重量级对象而言,是非常
可观的一笔系统开销。
2.由于new操作的次数减少,因而对系统内存的使用频率也会降低,这将减轻GC压力,缩短GC
? 停顿时间。
public class StaticSingleton {
private StaticSingleton(){
System.out.println("StaticSingleton is create");
}
private static class SingletonHolder{
private static StaticSingleton instance = new StaticSingleton();
}
public static StaticSingleton getInstance(){
return SingletonHolder.instance;
}
}
??
文章来源:https://blog.csdn.net/wcg_jishuo/article/details/135186272
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!