在代码世界游走,没几把 “锁” 防身可不行
摘要
“锁”代表安全。在程序中(这里指java)尤其多线程环境下,有了锁的帮助,会给数据安全带来保障,帮助线程更好的运作,避免竞争和互斥。
锁共有15种算法:乐观锁、悲观锁、自旋锁、重入锁、读写锁、公平锁、非公平锁、共享锁、独占锁、重量级锁、轻量级锁、偏向锁、分段锁、互斥锁、同步锁....一口气输出真的累,谁记这个啊。我们要吃现成的。ok,上面的一大堆在咱java里就是:
ReentrantLock,Synchronieed,ReentrantReadWriteLock,Atomic 全家桶,Concurrent全家桶。
以上在并发场景中都是被常常用到,想必大家都已炉火纯青般.....但是,我们还有后浪同学们可能不熟悉,那我在这里聊下锁的用法和使用场景。
欢迎在评论区写下你对这篇文章的看法。