原文:【BAT面试题系列】面试官:你了解乐观锁和悲观锁吗?

前言 乐观锁和悲观锁问题,是出现频率比较高的面试题。本文将由浅入深,逐步介绍它们的基本概念 实现方式 含实例 适用场景,以及可能遇到的面试官追问,希望能够帮助你打动面试官。 目录 一 基本概念 二 实现方式 含实例 CAS Compare And Swap 版本号机制 三 优缺点和适用场景 四 面试官追问:乐观锁加锁吗 五 面试官追问:CAS有哪些缺点 六 总结 一 基本概念 乐观锁和悲观锁是两种 ...

2019-04-29 08:30 16 8381 推荐指数:

查看详情

面试官:小伙子,给我说一下mysql 乐观悲观

悲观介绍 悲观,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中, 将数据处于锁定状态。悲观的实现,往往依靠数据库提供的机制(也只有数据库层提供的机制才能真正保证数据访问的排他性,否则,即使在本系统中实现 ...

Fri Jun 05 00:18:00 CST 2020 0 552
面试官:你说说互斥、自旋、读写锁、悲观乐观的应用场景

前言 生活中用到的,用途都比较简单粗暴,上锁基本是为了防止外人进来、电动车被偷等等。 但生活中也不是没有 BUG 的,比如加锁的电动车在「广西 - 窃·格瓦拉」面前,就是形同虚设,只要他愿意,他就可以轻轻松松地把你电动车给「顺走」,不然打工怎么会是他这辈子不可能的事情呢?牛逼之人,必有牛逼 ...

Thu Oct 22 22:12:00 CST 2020 1 502
面试官:你说说互斥、自旋、读写锁、悲观乐观的应用场景

前言 生活中用到的,用途都比较简单粗暴,上锁基本是为了防止外人进来、电动车被偷等等。 但生活中也不是没有 BUG 的,比如加锁的电动车在「广西 - 窃·格瓦拉」面前,就是形同虚设,只要他愿意,他就可以轻轻松松地把你电动车给「顺走」,不然打工怎么会是他这辈子不可能的事情 ...

Wed Sep 16 04:15:00 CST 2020 4 5901
面试经典系列》- 乐观悲观及其应用场景

1、乐观   乐观(Optimistic Locking)是一种思想,相对悲观而言,乐观认为对同一个数据的并发操作,不会造成冲突,所以在数据提交更新的时候,才会正式对数据进行冲突校验,如果有冲突,则给用户返回错误的信息,让用户决定如何处理。乐观地认为,不加锁的并发操作是没有问题 ...

Fri Mar 13 19:40:00 CST 2020 0 895
Java面试题 synchronized BAT面试题系列 基础篇(十一)

● 请你简述一下synchronized与java.util.concurrent.locks.Lock的相同之处和不同之处? 考察点:机制 参考回答: 主要相同点:Lock能完成synchronized所实现的所有功能 主要不同点:Lock有比synchronized更精确的线程语义 ...

Fri May 31 07:30:00 CST 2019 0 1729
面试官:MySQL 有哪些??

大家好,我是小林。 这次,来说说 MySQL 的,主要是 Q&A 的形式,看起来会比较轻松。 不多 BB 了,发车! 在 MySQL 里,根据加锁的范围,可以分为全局、表级和行三类。 全局 全局是怎么用的? 要使用全局,则要 ...

Mon Aug 16 19:24:00 CST 2021 0 863
面试官:你真的了解Redis分布式吗?

什么是分布式 说到Redis,我们第一想到的功能就是可以缓存数据,除此之外,Redis因为单进程、性能高的特点,它还经常被用于做分布式我们都知道,在程序中的作用就是同步工具,保证共享资源在同一时刻只能被一个线程访问,Java中的我们都很熟悉了,像synchronized ...

Fri Jan 15 17:53:00 CST 2021 2 1383
面试必备的数据库悲观乐观

前言 在上一个章节5分钟带你读懂事务隔离性与隔离级别 的最后,其实我们已经提到了的概念。本章节接下来将主要介绍以下数据库悲观乐观的相关知识。如有错误还请大家及时指出~ 本文已同步至 GitHub/Gitee/公众号,感兴趣的同学帮忙点波关注~ 问题: 为什么需要 ...

Wed Apr 17 06:25:00 CST 2019 1 2444
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM