1. 多线程经典面试题
2. Java多线程常用面试题(含答案,精心总结整理)
3. 多线程的40个面试题总结(上)
4. 总结Java开发面试常问的问题,持续更新中~
5. 线程面试top50题
6. 40个Java多线程问题总结
7. Java线程相关的热门面试题
8. Java并发编程二三事
线程优先级
现代操作系统采用的是时间分片的方式调度线程,设置线程优先级,使优先级高的线程获得时间分片的次数比优先级低的线程多。
早期synchronized 为什么效率低效
synchronized是通过对象内部的监视器锁(monitor)实现的,但是监视器锁本质上依赖于底层操作系统的互斥锁(Mutex_Lock)并且java线程是映射到操作系统线程的,所以java线程的上下文切换需要从用户态进入内核态操作,浪费系统资源。
因此,在jdk1.6后对synchronized做了很多优化,为了减少获得锁和释放锁带来的性能消耗,引入了 轻量级锁、偏向锁等。