robovm可以在堆栈而不是堆上分配本地方法对象吗?

雷米

在C(resp。C ++)中,可以在为此功能分配的堆栈帧中分配严格位于函数(resp。方法)本地的数组,结构(resp。对象)。

但是,在Java中,所有对象都分配在堆上,甚至是完全位于方法本地且从未泄漏到方法外部的对象。

在某些情况下,能够在堆栈而不是堆上分配此类对象将大大提高效率。

RoboVM代码生成是否支持此功能,或者将来是否可以支持此功能?

问候

养育

RoboVM不支持堆栈分配。一些VM会进行转义分析,以确定某种分配是否对于方法而言是本地的,并且可以在堆栈上而不是在堆上完成。我们将来可能会将其作为优化添加到RoboVM中,尽管它不是直接可由用户控制的。我知道IBM正在试验类似于.NET的结构:http : //www.slideshare.net/mmitran/ibm-java-packed-objects-mmit-20121120如果该标准被接受,我们将尝试在RoboVM中实现它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

可以在堆上分配右值向量吗?

来自分类Dev

在堆栈和堆上分配对象之间的区别

来自分类Dev

Java可以在堆栈上分配列表吗?

来自分类Dev

Python Staticmethod可以调用另一个本地方法吗?

来自分类Dev

堆上的对象会在调用函数时复制到堆栈上吗?

来自分类Dev

可以分配持久对象吗?

来自分类Dev

可以分配持久对象吗?

来自分类Dev

动态分配一个对象,结构中不是ptrs(不是动态分配)的成员会在堆栈中而不是堆中吗?

来自分类Dev

通过在堆上分配堆栈部分来避免堆栈溢出?

来自分类Dev

堆分配的对象会在堆栈上分配其成员吗?

来自分类Dev

PHP-我可以获取对象而不是方法返回吗?

来自分类Dev

PHP-我可以获取对象而不是方法返回吗?

来自分类Dev

使用像 .join() 这样的本地方法而不是我们自己编写逻辑时,效率有什么不同吗?

来自分类Dev

如果在堆栈或堆上完成分配,对于free()和delete []来说有关系吗?

来自分类Dev

那么我们可以将虚拟函数与分配在堆栈上的对象一起使用吗?

来自分类Dev

将vector :: push_back(myVec)放在堆上。您可以避免在堆栈上使用myVec标头信息吗?

来自分类Dev

可以在堆栈上分配const静态字符串吗?

来自分类Dev

是否有解析JavaScript对象的本地方法?

来自分类Dev

如果分配对象而不是键,如何删除本地存储?

来自分类Dev

确实的Android运行时(ART或Dalvik的)包含Java VM堆栈或本地方法堆栈如JVM?

来自分类Dev

有什么方法可以从失败的地方重试剧本吗?

来自分类Dev

在方法外声明的Java参考变量位于堆栈或堆上

来自分类Dev

具体来说,将在堆上分配哪些对象?

来自分类Dev

堆上堆栈类的结构

来自分类Dev

对象方法可以返回对象的实例吗?

来自分类Dev

基于C ++堆栈的对象分配

来自分类Dev

我的对象不是显示方法吗?

来自分类Dev

cpp对象方法有自己的堆栈框架吗?

来自分类Dev

当对象不是动态分配的(不是指针)时,是否可以从超类对象转换为子类?

Related 相关文章

  1. 1

    可以在堆上分配右值向量吗?

  2. 2

    在堆栈和堆上分配对象之间的区别

  3. 3

    Java可以在堆栈上分配列表吗?

  4. 4

    Python Staticmethod可以调用另一个本地方法吗?

  5. 5

    堆上的对象会在调用函数时复制到堆栈上吗?

  6. 6

    可以分配持久对象吗?

  7. 7

    可以分配持久对象吗?

  8. 8

    动态分配一个对象,结构中不是ptrs(不是动态分配)的成员会在堆栈中而不是堆中吗?

  9. 9

    通过在堆上分配堆栈部分来避免堆栈溢出?

  10. 10

    堆分配的对象会在堆栈上分配其成员吗?

  11. 11

    PHP-我可以获取对象而不是方法返回吗?

  12. 12

    PHP-我可以获取对象而不是方法返回吗?

  13. 13

    使用像 .join() 这样的本地方法而不是我们自己编写逻辑时,效率有什么不同吗?

  14. 14

    如果在堆栈或堆上完成分配,对于free()和delete []来说有关系吗?

  15. 15

    那么我们可以将虚拟函数与分配在堆栈上的对象一起使用吗?

  16. 16

    将vector :: push_back(myVec)放在堆上。您可以避免在堆栈上使用myVec标头信息吗?

  17. 17

    可以在堆栈上分配const静态字符串吗?

  18. 18

    是否有解析JavaScript对象的本地方法?

  19. 19

    如果分配对象而不是键,如何删除本地存储?

  20. 20

    确实的Android运行时(ART或Dalvik的)包含Java VM堆栈或本地方法堆栈如JVM?

  21. 21

    有什么方法可以从失败的地方重试剧本吗?

  22. 22

    在方法外声明的Java参考变量位于堆栈或堆上

  23. 23

    具体来说,将在堆上分配哪些对象?

  24. 24

    堆上堆栈类的结构

  25. 25

    对象方法可以返回对象的实例吗?

  26. 26

    基于C ++堆栈的对象分配

  27. 27

    我的对象不是显示方法吗?

  28. 28

    cpp对象方法有自己的堆栈框架吗?

  29. 29

    当对象不是动态分配的(不是指针)时,是否可以从超类对象转换为子类?

热门标签

归档