什么是重量级锁什么是轻量级锁?

1 个回答

  • 无邪
    鸟随鸾凤飞腾远,人伴贤良品自高。
    重量级锁是指当有一个线程获取锁之后,其余所有等待获取该锁的线程都会处于阻塞状态。简言之,就是所有的控制权都交给了操作系统,由操作系统来负责线程间的调度和线程的状态变更。而这样会出现频繁地对线程运行状态的切换,线程的挂起和唤醒,从而消耗大量的系统资。 轻量级锁是相对于重量级锁而言的,使用时不需要申请互斥量。 而是在没有多线程竞争的情况下,使用轻量级锁能够减少性能消耗,但是当多个线程同时竞争锁时,轻量级锁会膨胀为重量级锁。 轻量级锁的目标是,减少无实际竞争情况下,使用重量级锁产生的性能消耗,包括系统调用引起的内核态与用户态切换、线程阻塞造成的线程切换等。
    发布于 2022-02-04 18:43 •IP属地 辽宁
    举报
    评论
    收藏