虚拟机栈的五道面试题

虚拟机栈的五道面试题

1、举例栈溢出的情况?(StackOverFlowError)

通过-Xss设置栈的大小
如果采用固定大小的java虚拟机栈,每一个线程的java虚拟机栈容量在线程创建的时候选定,如果线程请求分配的栈容量超过java虚拟机栈允许的最大容量,抛出StackOverFlowError异常

2、调整栈大小,就能保证不出现溢出吗?

不能,出现溢出的情况晚一点出现,不是不出现。
如果java虚拟机栈可以动态扩展,并且在尝试扩展的时候无法申请到足够的内存,或者在创建新的线程时没有足够的内存去创建对应的虚拟机栈,抛出OutOfMemoryError异常

3、分配的栈内存越大越好吗?

不对,挤占其他栈内存空间,线程的数量

4、垃圾回收是否会涉及到虚拟机栈?

不会的

5、方法中定义的局部变量是否是线程安全?
具体问题具体分析

如果只有一个线程操作此数据,线程安全
多个线程操作此数据,则此数据是共享数据,如果不考虑同步机智的情况,存在线程安全问题

posted on   热爱技术的小郑  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示