자바 가 얼마나 알 고 있 는 지 (59) 다 중 스 레 드 만 들 기

6017 단어 자바
지금까지 우 리 는 두 개의 스 레 드 만 사용 했다. 메 인 스 레 드 와 한 개의 스 레 드.그러나 프로그램 은 더 많은 스 레 드 를 만 들 수 있 습 니 다.예 를 들 어 다음 프로그램 은 세 개의 하위 스 레 드 를 만 들 었 습 니 다.
 1 // Create multiple threads.

 2 class NewThread implements Runnable {

 3     String name; // name of thread

 4     Thread t;

 5     NewThread(String threadname) {

 6         name = threadname;

 7         t = new Thread(this, name);

 8         System.out.println("New thread: " + t);

 9         t.start(); // Start the thread

10     }

11 

12     // This is the entry point for thread.

13     public void run() {

14         try {

15             for(int i = 5; i > 0; i--) {

16                System.out.println(name + ": " + i);

17                Thread.sleep(1000);

18             }

19         } catch (InterruptedException e) {

20             System.out.println(name + "Interrupted");

21         }

22         System.out.println(name + " exiting.");

23     }

24 }

25 

26 class MultiThreadDemo {

27     public static void main(String args[]) {

28         new NewThread("One"); // start threads

29         new NewThread("Two");

30         new NewThread("Three");

31         try {

32             // wait for other threads to end

33             Thread.sleep(10000);

34         } catch (InterruptedException e) {

35             System.out.println("Main thread Interrupted");

36         }

37         System.out.println("Main thread exiting.");

38     }

39 }

프로그램 출력 은 다음 과 같 습 니 다.
New thread: Thread [One, 5, main] New thread: Thread [Two, 5, main] New thread: Thread [Three, 5, main] One: 5Two: 5Three: 5One: 4Two: 4Three: 3Three: 3Two: 3Two: 3One: 2three: 2two: 2One: 1Three: 1Two: 1One exiting. Two exiting. Three exiting. Main thread exiting. 보시 다시 피 시작 하면 모든 세 개의 스 레 드 가 CPU 를 공유 합 니 다.main () 에서 sleep (10000) 호출 에 주의 하 십시오.이것 은 메 인 스 레 드 를 10 초 동안 잠 들 게 하여 마지막 에 끝 날 수 있 도록 한다.
시리즈 글:
자바 가 얼마나 아 는 지 (상)
자바 가 얼마나 아 는 지 (중)

좋은 웹페이지 즐겨찾기