自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(2)
  • 收藏
  • 关注

原创 synchronized怎么保证原子性,怎么实现?

锁内的代码不会被重排序到锁外(编译器/CPU 指令重排序受限)。:只有一个线程访问时,通过 CAS 标记线程ID(减少同步开销)。防止锁对象被重新赋值,导致不同线程使用不同的锁,失去同步效果。:竞争激烈时,线程进入阻塞状态(操作系统的互斥锁)。:多个线程交替执行,通过 CAS 自旋尝试获取锁。:同一时间只有一个线程能持有锁,其他线程被阻塞。// 释放锁(异常退出,保证锁最终释放):存放等待锁的线程(竞争失败时进入)。(更灵活,支持公平锁、条件变量)。:锁的释放会将线程本地内存的修改。

2025-03-27 15:41:07 775

原创 线程同步的方式?

区分读操作和写操作,允许多个读线程同时访问,但写线程独占资源。:通过硬件指令保证单条操作的不可分割性(如CAS操作)。简单直接,但可能引发死锁(如多个锁顺序不当)。:线程在条件不满足时阻塞,等待其他线程通知(:通过计数器控制同时访问资源的线程数量。:每个线程拥有独立的变量副本,避免共享。解决线程间数据隔离问题(如数据库连接)。:通过算法(如银行家算法)或工具(如。适用于多阶段任务同步(如并行计算)。:按固定顺序获取锁(如全局锁排序)。:线程持有资源的同时请求其他资源。适用于限流场景(如连接池)。

2025-03-27 15:21:06 557

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除