首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    面试题36:介绍一下什么是sychronized的自旋锁、偏向锁、轻量级锁、重量级锁?

    偏向锁 在锁对象的对象头中记录一下当前获取到该锁的线程ID,该线程下次如果又来获取该锁就可以直接获取到了。 轻量级锁 由偏向锁升级而来,当一个线程获取到锁后,此时这把锁是偏向锁,此时如果有第二个线程来竞争锁,偏向锁就会升级为轻量级锁,之所以叫轻量级锁,是为了和重量级锁区分开来,轻量级锁底层是通过自旋来实现的,并不会阻塞线程。 重量级锁 如果自旋次数过多仍然没有获取到锁,则会升级为重量级锁,重量级锁会导致线程阻塞。 自旋锁 自旋锁就是线程在获取锁的过程中,不会去阻塞线程,也就无所谓唤醒线程,阻塞和唤醒

    01

    Java 网络爬虫,该怎么学?

    在后面的几年工作中,也参与了好几个爬虫项目,但是大多数都是使用 Python ,抛开语言不谈,爬虫也是有一套思想的。这些年写爬虫程序,对我个人的技术成长帮助非常大,因为在爬虫的过程中,会遇到各种各样的问题,其实做网络爬虫还是非常考验技术的,除了保证自己的采集程序可用之外,还会遇到被爬网站各种奇奇怪怪的问题,比如整个 HTML 页面有没一个 class 或者 id 属性,你要在这种页面提取表格数据,并且做到优雅的提取,这就是非常考验你的想象力以及技术啦。非常有幸在刚入行的时候就接触到了网络爬虫这一块,它加快了我对互联网的理解和认知,扩宽了我的视野。

    06
    领券