> Java > java지도 시간 > 본문

스레드를 생성하는 Java의 Runnable 인터페이스에 대한 자세한 설명

怪我咯
풀어 주다: 2017-07-04 16:45:37
원래의
1051명이 탐색했습니다.

이 글에서는 Java Runnable인터페이스스레드 생성 관련 정보를 주로 소개합니다. 필요한 친구들은 참고하시면 됩니다.

스레드 생성을 위한 java Runnable 인터페이스

스레드를 생성하는 것이 가장 간단합니다. Runnable 인터페이스를 구현합니다.

Runnable을 구현하려면 클래스는 다음과 같이 선언된 run()이라는 메서드만 실행하면 됩니다.

public void run()
로그인 후 복사

이 메서드를 재정의할 수 있습니다. run()이 다른 메서드를 호출할 수 있다는 점을 이해하는 것이 중요합니다. 다른 클래스, 그리고 메인 스레드와 마찬가지로 variables를 선언하세요.

Runnable 인터페이스를 구현하는 클래스를 만든 후 클래스에서 스레드 개체 를 인스턴스화할 수 있습니다.

Thread는 여러 가지 생성자 메서드를 정의합니다. 다음은 우리가 자주 사용하는 것입니다.

Thread(Runnable threadOb,String threadName);
로그인 후 복사

여기에서 threadOb는 Runnable 인터페이스를 구현하는 클래스의 인스턴스이고 threadName은 새 스레드의 이름을 지정합니다.
새 스레드가 생성된 후에는 start() 메서드를 호출할 때까지 실행되지 않습니다.

void start();
로그인 후 복사

Example

다음은 스레드를 생성하고 실행을 시작하는 예입니다.

// 创建一个新的线程
class NewThread implements Runnable {
  Thread t;
  NewThread() {
   // 创建第二个新线程
   t = new Thread(this, "Demo Thread");
   System.out.println("Child thread: " + t);
   t.start(); // 开始线程
  }

  // 第二个线程入口
  public void run() {
   try {
     for(int i = 5; i > 0; i--) {
      System.out.println("Child Thread: " + i);
      // 暂停线程
      Thread.sleep(50);
     }
   } catch (InterruptedException e) {
     System.out.println("Child interrupted.");
   }
   System.out.println("Exiting child thread.");
  }
}

public class ThreadDemo {
  public static void main(String args[]) {
   new NewThread(); // 创建一个新线程
   try {
     for(int i = 5; i > 0; i--) {
      System.out.println("Main Thread: " + i);
      Thread.sleep(100);
     }
   } catch (InterruptedException e) {
     System.out.println("Main thread interrupted.");
   }
   System.out.println("Main thread exiting.");
  }
}
로그인 후 복사

위 프로그램을 컴파일하고 결과를 다음과 같이 실행합니다.

Child thread: Thread[Demo Thread,5,main]
Main Thread: 5
Child Thread: 5
Child Thread: 4
Main Thread: 4
Child Thread: 3
Child Thread: 2
Main Thread: 3
Child Thread: 1
Exiting child thread.
Main Thread: 2
Main Thread: 1
Main thread exiting.
로그인 후 복사

위 내용은 스레드를 생성하는 Java의 Runnable 인터페이스에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!