总结
我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的。
Mybatis源码解析
public enum State {
/**
* 新生状态:线程对象创建,但是还未start()
*/
NEW,
/**
* 线程处于可运行状态,但是这个可运行状态并不代表线程一定在虚拟机中执行。
* 需要等待从操作系统获取到资源(比如处理器时间片),才能真正的去运行
*/
RUNNABLE,
/**
* 当前线程处于阻塞状态,正在等待另一个线程的monitor lock释放,才进入synchronized代码块或方法
*/
BLOCKED,
/**
* 调用Object#wait() 、 Thread.join方法后当前线程处于等待状态,
* 等待其他的线程执行特定的动作,才能从等待状态退出。
* 比如:Object.wait()的线程需要等待其他线程调用Object.notify()、Object.notifyAll()才能退出
* 比如:调用了Thread.join()的线程需要等待指定的线程执行完成才能退出等待状态。
*/
WAITING,
/**
* 进入特定时间内的等待状态,等待一段指定的时间sleep(timed)、wait(timed)或者等待Thread.join(timed)的时间.
* 到达指定时间点自动退出恢复到RUNNABLE状态
*/
TIMED_WAITING,
/**
* 线程结束状态
*/
TERMINATED;
}
最后
经过日积月累, 以下是小编归纳整理的深入了解Java虚拟机文档,希望可以帮助大家过关斩将顺利通过面试。
由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
频+实战项目源码】](https://bbs.youkuaiyun.com/topics/618154847)收录**