Javaはどのようにしてスレッドを一時停止しますか?

6322 ワード

Javaプログラミングでは、スレッドを一時停止するにはどうすればいいですか?
次の例では、sleepThread()メソッドを作成してスレッドを一時停止する方法を示します.
package com.yiibai;

public class SuspendingThread extends Thread { private int countDown = 5; private static int threadCount = 0; public SuspendingThread() { super("" + ++threadCount); start(); } public String toString() { return "#" + getName() + ": " + countDown; } public void run() { while (true) { System.out.println(this); if (--countDown == 0) return; try { sleep(100); } catch (InterruptedException e) { throw new RuntimeException(e); } } } public static void main(String[] args) throws InterruptedException { for (int i = 0; i < 5; i++) new SuspendingThread().join(); System.out.println("The thread has been suspened."); } } 

Java
上記のコード例では、次の結果が得られます.
#1: 5
#1: 4
#1: 3
#1: 2
#1: 1
#2: 5
#2: 4
#2: 3
#2: 2
#2: 1
#3: 5
#3: 4
#3: 3
#3: 2
#3: 1
#4: 5
#4: 4
#4: 3
#4: 2
#4: 1
#5: 5
#5: 4
#5: 3
#5: 2
#5: 1
The thread has been suspened.

転載先:https://www.cnblogs.com/borter/p/9613449.html