inblog logo
|
SW Engineering Blog

    Java Threads/Threading MultiTasking

    data deadlock, integrity
    May 30, 2024
    Java Threads/Threading MultiTasking
    Contents
    Java MultitaskingMultitasking devicesJava Threading은 JVM이 수행JVM Thread SchedulingExercise 1Class Thread를 확장(상속)하여 Thread Scheduling해 보기Exercise 2Runnable을 상속하여 Thread SchedulingExercise 3

    Java Multitasking

    Multitasking devices

    운영체제가 관리하는 동시에 2개 이상의 프로세스(여러 스레드로 나뉘어 작업)가 처리 가능한 모든 작업

    (ex. 뮤직비디오 재생-음악+비디오 재생)

    Java Threading은 JVM이 수행

    jvm이 threads life scheduling 관리

    단, one application program이 JVM에 할당, 내부에 여러 threads(갈래; 실)가 존재

    JVM Thread Scheduling

    thread의 우선 순위를 scheduling한다.

    이 때 우선순위를 동등하게 부여할 수 있다.

    Exercise 1

    Class Thread를 확장(상속)하여 Thread Scheduling해 보기

    public class TimerThread extends Thread{
        int n = 0;
        public void run() {
            while (true) {
                n++;
                System.out.println(n);
                try {
    //
                    sleep(2000);
                } catch (InterruptedException e) {
    //                e.printStackTrace();
                    return;
                }
    
            }
        }
    
        public static void main(String[] args) {
            TimerThread t = new TimerThread();
            t.start();
        }
    }

    Thread.sleep() static method를 사용하여 대기시간을 2000ms로 부여합니다.

    console

    ..
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69

    Exercise 2

    Runnable을 상속하여 Thread Scheduling

    class TimerThread implements Runnable{
        public void run() {
          
         }
    }

    Exercise 3

    Share article

    SW Engineering Blog

    RSS·Powered by Inblog