RFR: 8275775: Add jcmd VM.classes to print details of all classes [v6]
    Ioi Lam 
    iklam at openjdk.java.net
       
    Fri Mar  4 05:17:05 UTC 2022
    
    
  
On Fri, 4 Mar 2022 02:47:28 GMT, Yi Yang <yyang at openjdk.org> wrote:
>> This issue seem still outstanding.
>
> Current:
> 
> $./jcmd 83908 VM.classes|head -10
> 83908:
> KlassAddr           Size  State                 Flags    ClassName  
> 0x0000000800df8400  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800df8400  
> 0x0000000800df8000  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800df8000  
> 0x0000000800de4400  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800de4400  
> 0x0000000800de4000  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800de4000  
> 0x0000000800dc8800  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800dc8800  
> 0x0000000800dc8400  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800dc8400  
> 0x0000000800dc8000  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800dc8000  
> 0x0000000800db9800  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800db9800 
> 
> After using "%4d":
> 
> $./jcmd 75481 VM.classes|head
> 75481:
> KlassAddr           Size  State                 Flags    ClassName  
> 0x0000000800df8400    62  fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800df8400  
> 0x0000000800df8000    62  fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800df8000  
> 0x0000000800de4400    62  fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800de4400  
> 0x0000000800de4000    62  fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800de4000 
> 
> So we do not need to change this.
You should change it to `%4d`. Otherwise, when the numbers are changed in the future (e.g., to 3 or 4 digits) they will be misaligned:
KlassAddr           Size  State                 Flags    ClassName  
0x0000000800df8400  62    fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800df8400  
0x0000000800df8000  123   fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800df8000  
0x0000000800de4400  4567  fully_initialized     W        java.lang.invoke.LambdaForm$DMH/0x0000000800de4400
-------------
PR: https://git.openjdk.java.net/jdk/pull/7105
    
    
More information about the hotspot-dev
mailing list