<div>Couldn&#39;t find these two fields in sun.misc.Unsafe (in JDK6u30), found arrayIndexScale(Class) and addressSize() methods instead.</div>Experiment:
<a href="https://gist.github.com/2038305">https://gist.github.com/2038305</a><div>Works as advertised. Thanks John! Learning new bits everday for me, too :-)<br><br>- Kris<br><br><div class="gmail_quote">On Thu, Mar 15, 2012 at 1:53 AM, John Rose <span dir="ltr">&lt;<a href="mailto:john.r.rose@oracle.com">john.r.rose@oracle.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div class="im"><div><div>On Mar 14, 2012, at 1:41 AM, Krystal Mok wrote:</div><br><blockquote type="cite">
<span style="border-collapse:separate;font-family:Helvetica;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;font-size:medium">I&#39;m not aware of any way to get the exact &quot;reference size&quot; (or &quot;oop size&quot; in HotSpot&#39;s terms). But it&#39;s possible to know whether compressed oops is in use or not.</span></blockquote>
</div><br></div><div>For some platforms, you could inspect sun.misc.Unsafe.ARRAY_OBJECT_INDEX_SCALE (= oopSize) and ADDRESS_SIZE (= wordSize).</div><div><br></div><font color="#888888"><div> John</div></font></div></blockquote>
</div><br></div>