
笔记
展翅飞翔Java
一起交流学习提升
展开
-
JVM知识点总结
# 以下问题仅作为知识记录,有问题大家可以留言或私信一起讨论学习! 1. 什么情况下会发生栈内存溢出? 栈是线程私有的,栈的生命周期和线程是一样的,每一个方法执行的时候,都会创建一个栈帧,它包含了局部变量表,操作数栈,动态链接方法的出口等等。局部变量表又包含基本数据类型和对象的引用。 当线程请求超过虚拟机允许的最大深度的时候,就会报栈内存溢出。 比如:方法递归调用的时候就会触发栈内存溢出。 解决: 可以通过调整参数来调整JVM的栈的大小。 2.说说JVM的内存模型? JV.原创 2020-12-22 21:19:28 · 405 阅读 · 0 评论 -
如何控制线程执行的顺序?
1、如何控制线程执行的顺序? 有三个线程,让这三个线程按照我们指定的顺序执行!! 答:1.join()方法:让主线程等待其他线程执行完成之后执行。 让主线程放弃cpu的控制权,等待调用join方法的线程执行完成之后再执行!join()方法底层调用的wait()方法,是让主线程等待其他线程执行完成之后执行。 2.ExecutorService executor =Executors. newSingleThreadExecutor(); 在jdk1.5之后,所提供的一个多线程操作的api。创建一个只有一个线原创 2020-08-07 21:52:32 · 1100 阅读 · 0 评论