'javacpu사용량'에 해당되는 글 1건

  1. 2020.11.11 CPU, 메모리 사용량 반환
Java2020. 11. 11. 14:58

 

 

CPU 사용량과 메모리 사용량을 반환하는 예제이다. 

OperatingSystemMXBean 객체를 이용하는데, 해당 객체는 Java 1.7부터 이용 가능하다고 한다.

byte[]로 반환받아야하는 상황이 있어서, 나는 이렇게 코드를 적용했었다.

 

 

 

private static OperatingSystemMXBean osbean = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
     
     // ...
     
     /**
	 * cpu사용량을 가져온다.
	 *
	 * @return
	 */
	public static byte[] getCpuStatus() {
		short usedProcessor = (short) (osbean.getSystemCpuLoad() * 100);
		
		byte[] nCPU = new byte[2];
		nCPU[0] = (byte) (usedProcessor & 0xff);
		nCPU[1] = (byte) ((usedProcessor >> 8) & 0xff);
		return nCPU;

	}
	
	/**
	 * 메모리 사용량을 가져온다.
	 *
	 * @return
	 */
	public static  byte[] getMemoryStatus() {
		long free = osbean.getFreePhysicalMemorySize();
		long total = osbean.getTotalPhysicalMemorySize();
		float used = (1.0f - (float) free / total) * 100;
		
		byte[] nMemory = new byte[2];
		nMemory[0] = (byte) (((short) used) & 0xff);
		nMemory[1] = (byte) ((((short) used) >> 8) & 0xff);
		return nMemory;
	}

 

 

 

 

'Java' 카테고리의 다른 글

byte 배열을 short으로  (0) 2020.11.11
int를 byte배열로 반환  (0) 2020.11.11
이클립스 switch문을 if문으로  (0) 2020.11.11
바이트배열을 헥사값으로 변환  (0) 2020.11.11
getBytes, toString 차이  (0) 2020.11.11
Posted by 사슴영혼'-'