飞将数奇(飞将数奇代表什么动物)

  • 时间:
  • 浏览:8
  • 来源:范文之家

属辞比车

广东省佛山市人民检察院

什么是锁?什么是乐观锁和悲观锁?许多人经常认为自己很奇怪,很有才华,但是当他们问这些基本概念时,他们含糊,自夸甚至输入自己的代码,但他们不知道怎么说,或者他们不知道。完全不了解。是的今天,小马将整理一下,让我们随便聊一聊。什么是锁?在编程中,我们提到锁通常是指并发资源锁。那么什么是资源锁?我们以一种流行的方式了解锁定行为。当一个资源被两个程序(进程)竞争时,为了确保该资源只能被其中一个使用,在获取资源后将其锁定。获取其他进程的过程。由此我们想到了操作系统死锁的概念。我们引用它来加深我们的理解。这也是一个经典问题。这也是实现锁时需要注意的关键问题:众所周知的银行家算法是避免死亡。如果存在锁定问题,则只要不满足上述四个条件之一即可。该算法用于解决生活中的实际问题,例如银行贷款。如何理解锁?让我们给一个栗子。在大学里,我们经常看到每个人在期末考试中都占据图书馆的位置,经常让学生在书上放一本书,等待自己慢慢通过。那么,将书放入书本的操作等同于将资源锁定在此位置。完成自学后,请在离开后同时将书拿走。这是资源解锁。哈哈,很容易理解和现实。要开始讨论,那么什么是乐观锁定和悲观锁定。顾名思义,乐观锁是非常乐观的资源不会被他人占用,而悲观锁则是悲观地认为资源将很快被带走,因此添加一个锁。对应于这种情况,今天您在宿舍宣布要去图书馆自学,但您乐观地认为昨天我的职位必须没有竞争,因此您已经确定了昨天职位的资源,并且那么您还没有提前放书。座位。当您到达现场时,您将判断资源是否被某人占用。如果它被占用,您将不会坐下。如果没有被占用,您将坐下来并成功拥有资源。这是乐观锁定,实际上是在乐观使用而不使用前锁定的情况下做出的判断。那么悲观锁呢?实际上,当您离开前一天时,您首先放书,然后占用资源,然后在用完资源时将其释放给其他人使用。嘿,僵局与这个场景如何对应?其实你放了一本书
然后第二天,您看到有一本书在等那个人把书拿走,您可以坐下,而那个人是同一个人,等着您把书拿走,她可以坐下。因此,你们都在互相等待,你们两个都不能坐下来使用此资源,从而导致死锁。除了主题之外,如果您使用书籍来占用资源,但是第二天迟到了,那么会有人穿过河,因此管理员可能会在晚上直接收到书籍,这实际上是书籍的有效期。锁,哈哈哈。乐观锁和悲观锁的实现我们常见的悲观锁是什么?例如,执行并发锁,文件锁。什么是乐观锁?例如,该操作还使用版本号(字段或记录版本号)来实现乐观锁定。我们的编程中主要使用哪种锁?一种非常经典的方法是防止在峰值情况下出现超售。两种锁的区别在于:悲观锁阻塞(一旦一方锁定了资源,另一方需要等待它被释放才可以操作),乐观锁非阻塞(可以在操作过程中进行操作),最后判断是否成功)。让我们详细扩展这些锁的实现。实现并发锁(悲观锁)还有一种并发锁解决方案可以防止超卖。我们仍然可以使用它来首先扣除资源(库存数量字段中的库存减少或销售增加或库存较低,然后可以将库存首先放入队列中),当操作失败时,库存将回滚,但是此方案可能导致销售不足的问题。例如,如果扣除资源,则在查询时没有资源,执行失败,清单被回滚和离开。这样,又没有售出一种库存资源。嘿,容易理解吗?要实现乐观锁,我们将按照上面的示例并按照以下步骤来构建具有实现版本号的乐观锁。至于版本号,也可以根据业务需求,使用在查询过程中检索到的数据库表字段直接实现。实际上,还有另一种最简单的方法,即直接实现乐观锁定。也就是说,当我们执行更新操作时,我们会判断条件,即原始值是否是更新时数据库的值,如果不是,则意味着该资源在使用时已被其他人使用,相似。综上所述,乐观锁定本身并不锁定资源。乐观的是不会修改数据,仅在更新时判断是否已修改。在上述原则(乐观锁定)的帮助下,让我们看一下乐观锁定。实际上,它在乐观锁定中相对常见。要解决的问题是确保原子操作。 (),即比较和交换,
该机制中使用了一个基本操作数:内存地址,旧的期望值和要修改的新值。更新变量时,仅当变量的期望值与存储器地址中的实际值相同时,才会将与存储器地址相对应的值修改为。我们可以看到实际原理与我们上面提到的乐观锁相同。即,它是通过直接硬件直接实现的。尽管透明,但缺点仍然存在。在高并发的情况下,如果多个线程反复尝试更新某个变量,但是更新始终不成功,则循环会带来巨大压力;该机制所保证的仅仅是变量操作的原子性,不能保证整个代码块的原子性,因此代码块的原子性需要辅助其他解决方案。只需单击此处并停止。当然,以上仅仅是简单的概念理解和介绍性示例,具体实现将更加复杂,需要考虑的场景将更加丰富。例如,如何避免死锁;未能获得锁会给用户带来不好的体验吗?是否需要考虑自旋锁和其他问题?分布式锁的实现超出了本文的范围(核心是:解锁自己的锁;确保​​条件判断和操作执行的原子性)。我不会从这里开始,有兴趣的人可以与小马进一步沟通。谢谢您的阅读,再见。