对于它的价值,我查看了Dalvik
VM源代码,但找不到任何稳定的API来获取对象的大小。如果您想自己看一下,对象的大小存储在中
ClassObject::objectSize :size_t,请参见 dalvik / vm / oo / Object.h 。
但是,有 内部
API可以获取对象的大小。DDMS使用它来报告有关对象大小的详细信息。但是,由于API是内部的,因此很可能会在不同版本的Android之间进行更改。另外,该API会发送原始
byte[]数据,并且基于客户端/服务器,而不是简单的库调用,因此使用起来非常尴尬。如果你想看看,开始
dvmAllocObject()在
达尔维克/ VM /分配/ Alloc.cpp 和
dvmTrackAllocation()电话。
综上所述:遗憾的是,没有任何易于使用的稳定API可以在Dalvik VM中获得对象的大小。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)