猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
iload_1,iload_2,iload_3和iload #index字节码有什么区别?
iload #index的方式与其他3个字节代码不同。两者之间是否有任何性能差异。
眼眸繁星
浏览 579
回答 2
2回答
UYOU
iload #index的方式与其他3个字节代码不同。iload_1 _2 _3使用一个字节的字节码。另一种形式使用2。两者之间是否有任何性能差异。仅间接地。在大多数情况下,它没有什么区别,但是有些性能调整指标是基于字节码字节数的。例如是否内联方法。稍长的方法可能意味着未执行某些优化。例如,即使不经常调用,用于内联方法的度量标准也为35个字节。如果代码使用的是iload#而不是iload_1,则可能意味着它的长度略大于35个字节,而不是略少且没有内联。
0
0
0
慕容708150
启动新线程时,JVM为该线程创建新堆栈,并且当线程调用Java方法时,虚拟机将创建一个新框架并将其推送到该线程的Java堆栈上。堆栈帧由三部分组成:局部变量,操作数堆栈,帧数据。局部变量被组织为从零开始的单词数组。这些iload_1,iload_2,iload_3是局部变量数组的入口级别。因此,iload_1表示引用局部变量数组的第一个索引。类似地,iload_2和iload_3分别表示引用局部变量数组的第二和第三索引。因此,在这些iload_1,iload_2和iload_3中没有特定的区别,而是引用局部变量数组中的相应索引。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
Java
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续