스레드 생성 및 동기화

스레드를 생성하는 방법

  • Thread 클래스를 상속받는 방법
    /* Thread 클래스를 상속 받는 방법과 run() 메서드 재정의 */ 
    import java.lang.Thread;
    class NewThread exends Thread {
       public void run() {
          /* Thread Body */ 
       }
    }
    
    /* Thread 클래스를 상속받았을 경우 스레드를 start 하는 방법 */ 
    NewThread n = new NewThread();
    n.start(); /* 스레드의 시작 */

     

  • Runnable 인터페이스를 구현하는 방법
    Runnable 인터페이스를 사용하는 경우는 클래스가 다른 클래스로부터 이미 상속을 받고 있을 경우에 자바는 중복 상속을 허용하지 않기 때문에 이 경우에 사용할 수 있다.
    /* Runnable 인터페이스의 구현(run() 메서드 구현) */ 
    import java.lang.Runnable;
    class NewRunnableThread implements Runnable {
       public void run() {