本地方法及本地方法栈
2021-04-19 16:36:31 0 举报
AI智能生成
本地方法及本地方法栈
作者其他创作
大纲/内容
在内存的位置
为什么要使用本地方法
于java环境外的交互
与操作系统的交互
sun is java
现状
目前使用该方法的已经越来越少
本地方法栈
内存问题
如果是固定内存,超过了本地方法栈云溪的最大容量,java虚拟机会抛出一个StackOverFlowError错误
如果本地方法栈可以动态扩展,并在申请内存是无法申请足够的内存,或者在创建新的线程时没有足够的内存取常见对应的本地方法栈,那么java虚拟机将会抛出一个OutOfMemoryError异常
限制问题
当摸个线程调用一个本地方法时,他就进入了一个全新的并且不再受虚拟机限制的世界,它和虚拟机拥有同样的权限
本地方法可以通过本地方法接口来访问虚拟机内部的运行时数据区。
它甚至可以直接使用本地处理器中的寄存器
直接从本地内存的对中分配任意数量的内存
本不是所有的jvm都支持本地方法,应为java虚拟机规范并没有明确要求本地方法栈的使用语言、具体实现方式、数据结构等,如果JVM产品不打算支持native方法,也可以无需实现本地方法栈
hotspot jvm中直接将本地方法栈和虚拟机合二为一了
0 条评论
下一页