easy-base-concurrent | 线程安全-原子性-锁

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiangxinquqi/article/details/82956904

原子性提供了互斥操作

  • synchronized : 依赖JVM
  • Lock:依赖特殊的CPU指令,(ReentrantLock)

synchronized

  • 修饰代码块:作用于调用的对象
  • 修饰方法:作用于调用的对象
  • 修饰静态方法:作用于所有对象
  • 修饰类:作用于所有对象

对比

  • synchronized:不可中断锁,适合竞争不激烈,可读性好
  • Lock:可中断锁,多样化同步,竞争激烈时能维持常态
  • Atomic:竞争激烈时能维持常态,比Lock性能好;只能更新一个值

猜你喜欢

转载自blog.csdn.net/jiangxinquqi/article/details/82956904