本篇文章为大家展示了AQS的ReentLock的作用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
公司主营业务:成都网站建设、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出袁州免费做网站回馈大家。
什么是公平锁 什么是非公平锁?
公平锁: 先到临界区的线程要比后到临界区的线程先获得锁
非公平锁: 先到临界区的线程未必比后到临界区的线程先获得锁。
怎么实现公平锁和非公平锁?
公平锁把竞争的线程放在一个队列上,只要持有锁的线程执行完了,唤醒下一个队列的线程去获取锁, 非公平锁的实现也很简单,就是线程先尝试能不能获取到锁,如果获取到锁就执行同步代码块,如果没有获取到锁,就把这个线程放到队列中去。所以公平锁和非公平锁的区别是线程执行同步代码块时,是否会尝试获取锁。
为什么要创建队列? 线程一直尝试获取锁不就行了么?
一直尝试获取锁 就是自旋锁,是耗费资源的。多个线程一直在自旋,而且大多数是竞争失败的,应该没有人会这样实现吧。
上述内容就是AQS的ReentLock的作用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。