모든 자바 프로그램은 메인 스레드가 main() 메소드를 실행하면서 시작된다. 메인 스레드를 필요에 따라 추가 작업 스레드들을 만들어서 실행시킬 수 있다.
싱글 스레드에서는 메인 스레드가 종료되면 프로세스도 종료된다.
멀티 스레드에서는 실행 중인 스레드가 하나라도 있다면 프로세스는 종료되지 않으며 메인 스레드가 작업 스레드보다 먼저 종료되더라도 작업 스레드가 계속 실행 중이라면 프로세스는 종료되지 않는다.
멀티 스레드로 실행하는 프로그램을 개발하려면
자바는 작업 스레드도 객체로 관리하므로 클래스가 필요하다. 이때에는 아래의 두가지 방법으로 클래스를 생성 할 수 있다.
java.lang 패키지에 있는 Thread 클래스로부터 Thread thread = new Thread(Runnable target);