¿Es correcto convertir bytes a GB?

Quiero verificar cuánta memoria se usa en mi aplicación Java, y luego usé:

 System.out.println("Free memory (bytes): " +
                    Runtime.getRuntime().freeMemory()/(1024*1024*1024));

Convertí el byte a GB. Pero en Google, muestra que un byte = 1e-9 gb. ¿Cuál es la correcta?

Respuesta 1

La JVM siempre usa gibibytes o 1024 ^ 3 o 1 << 30que deben escribirse como GiB para mayor claridad, pero no siempre se hacen de manera consistente.

Le sugiero que elija GB = 1000 ^ 3 o GiB = 1024 ^ 3 y escriba la unidad con el resultado para que quede claro a qué se refiere. También mostraría algunos dígitos de precisión, por ejemplo

System.out.println("Free memory: " +
                   (Runtime.getRuntime().freeMemory() * 1000 >> 30) / 1e3 + 
                   " GiB"));

o

System.out.println("Free memory: " +
                   (Runtime.getRuntime().freeMemory() / 1_000_000 / 1e3 + 
                   " GB"));

En ambos casos, mostrará 3 dígitos de precisión.

Respuesta: 2

Estoy haciendo ingeniería inversa de algún código que está descifrando datos, con la esperanza de poder volver a cifrarlos y obtener los mismos datos con los que comenzó, por razones que harían esta pregunta demasiado larga y ...

La asignación es simple, todo lo que tenemos que hacer es hacer que el código cree una ventana con un panel rojo con un solo botón y etiqueta. Aquí está el código hasta ahora, así como la clase de probador. Tengo la etiqueta para ...

Estoy tratando de desactivar la exposición automática, el enfoque automático y el balance de blancos automático en la muestra Camera2Basic de Google. Aquí está mi código: private void disableAutomatics () {try {mPreviewRequestBuilder ....

Estoy usando apache poi versión 4.0.0 y estoy tratando de hacer muchos grupos de columnas como la imagen a continuación: No sé si es posible usar poi. He intentado con el método XSSFSHeet.groupColumn () ...