닭발개발

[Java] Java.lang 패키지의 Runtime 클래스 본문

JAVA

[Java] Java.lang 패키지의 Runtime 클래스

D269 2023. 8. 24. 10:26
728x90

 

 

java.lang  Runtime

- Runtime 클래스는 실행환경을 객체화하기 위해 사용한다.

- Runtime 객체를 이용해서 현 운영체제 시스템 간의 상호작용 가능

- java 클래스가 아닌 운영체제 기반의 프로그램을 실행시키거나 운영체제에 대한 정보 제공

 

 

 

Runtime의 주요 메소드

메소드 설명
Process exec(String command) Command를 실행시키고, 실행시킨 프로세스의 레퍼런스를 반환
static Runtime getRuntime() Runtime 객체의 레퍼런스를 반환
void exit(int status) status를 반환하면서 jvm을 종료시킴
long freeMemory() jvm이 사용가능한 메모리 양(bytes)을 반환
long totlaMemory() jvm이 사용하고 있는 전체 메모리를 반환
long maxMemory() jvm이 사용할 수 있는 최대 메모리 양을 반환

 

 

예제코드1

(코드 출처 : https://www.devkuma.com/docs/java/runtime-class/  )

package com.devkuma.tutorial.java.lang;

public class RuntimeClass {

    public static void main(String[] args) {
        Runtime runtime = Runtime.getRuntime();

        long totalMemory = runtime.totalMemory();
        long freeMemory = runtime.freeMemory();
        long usedMemory = totalMemory - freeMemory;

        System.out.println("Total Memory : " + totalMemory); // Total Memory : 128974848
        System.out.println("Free Memory : " + freeMemory); // Free Memory : 126929960
        System.out.println("Used Memory : " + usedMemory); // Used Memory : 2044888
    }
}

 

예제코드2

package com.devkuma.tutorial.javalang;

import java.io.IOException;

public class RuntimeClass1 {

    public static void main(String[] args) {
        Runtime runtime = Runtime.getRuntime();

        // linux인 경우 아래 명령어를 실행한다.
        try {
            runtime.exec("gedit");
        } catch (IOException e) {
            System.err.println("Error executing gedit.");
        }

    }
}

 

 

 

 

 

 

 

728x90
반응형