💬 스레드(태스크) : 운영 체제(자바에선 자바 가상기계가 함)에 의해 관리되는 하나의 작업
💬 멀티스레딩 : 다수의 스레드를 동시에 실행시키도록 응용프로그램을 작성하는 기법
💬 JVM : 자바에서 스레드가 몇 개 존재하는 지 등과 같은 정보와 스레드 스케줄링을 맡으며, 스레드를 관리한다.
ㆍThread 클래스 이용
ㆍRunnable 인터페이스 이용
class TimerThread extends Thread { // Thread 클래스를 상속받은 TimeThread 클래스
...
public void run() { // Thread 클래스의 run() 오버라이딩 (run()이 스레드 코드)
...
}
}
TimeThread th = new TimeThread(); // 스레드 객체 생성
th.start(); // Thread 클래스의 start() 메소드를 호출하여 스레드를 실행시킴
class TimerRunnable implements Runnable { // Runnable 인터페이스를 구현한 TimerRunner 클래스
...
public void run() { // 스레드 코드 구현
...
}
}
Thread th = new Thread(new TimerRunnable());
TimerRunnable의 인스턴스를 생성하고, Thread 클래스의 생성자에 전달 (start() 메소드가 Thread 클래스에 있으므로)
th.start();