浅谈 java 无锁与有锁的区别

88 阅读1分钟

1.首先声明,无锁是没法完全替代锁机制的

2.无锁 即在多个线程同时操作一个资源的时候,会进行循环修改同一个资源,同一时刻只会有一个线程可以修改成功,最终所有线程都会执行到位

3.锁 比如synchronized,则是一种悲观锁,会存在线程阻塞等等问题

4.总结,无锁在很多场景中 性能的延伸性是很好的,但是试想一下,无限循环操作,如果出现什么问题,也是很难受的