Java에서 sleep의 사용법은 다음과 같습니다. 현재 실행 중인 스레드를 강제로 절전 모드(실행 일시 중지)로 지정합니다. 예: [Thread.sleep(long millis)] 스레드가 절전 모드일 때 깨어나기 전에 실행 가능한 상태로 돌아가지 않습니다. ; 수면 중 시간이 만료되면 실행 가능 상태로 돌아갑니다.
Java에서 sleep 사용법은 다음과 같습니다.
Thread.sleep(long millis)
및 Thread.sleep(long millis, int nanos)
정적 메서드는 현재 실행 중인 스레드를 절전 모드(실행 일시 중지)로 강제 설정하여 "스레드 속도를 늦춥니다". Thread.sleep(long millis)
和Thread.sleep(long millis, int nanos)
静态方法强制当前正在执行的线程休眠(暂停执行),以“减慢线程”。
当线程睡眠时,它睡在某个地方,在苏醒之前不会返回到可运行状态。
当睡眠时间到期,则返回到可运行状态。
1、线程睡眠的原因:线程执行太快,或者需要强制进入下一轮,因为Java规范不保证合理的轮换。
2、睡眠的实现:调用静态方法。
try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); }
3、睡眠的位置:为了让其他线程有机会执行,可以将Thread.sleep()
的调用放线程run()
스레드가 휴면 상태이면 어딘가에서 휴면 상태가 되며 깨어날 때까지 실행 가능한 상태로 돌아가지 않습니다.
1. 스레드 휴면 이유:
스레드가 너무 빨리 실행되거나 Java 사양이 합리적인 회전을 보장하지 않기 때문에 강제로 다음 라운드로 진입해야 합니다.2. 수면 구현:
정적 메서드 호출public class TestSleep { public static void main(String[] args) { MyThread2 t1 = new MyThread2("TestSleep"); t1.start(); for(int i=0 ; i <10; i++) System.out.println("I am Main Thread"); } } class MyThread2 extends Thread { MyThread2(String s) { super(s); } public void run() { for(int i = 1; i <= 10; i++) { System.out.println("I am "+getName()); try { sleep(1000); //暂停,每一秒输出一次 }catch (InterruptedException e) { return; } } } }
public class MyThread extends Thread { public void run() { for (int i = 0; i < 100; i++) { if ((i) % 10 == 0) { System.out.println("-------" + i); } System.out.print(i); try { Thread.sleep(1000); System.out.print(" 线程睡眠1秒!\n"); } catch (InterruptedException e) { e.printStackTrace(); } } } public static void main(String[] args) { new MyThread().start(); } }
위 내용은 Java에서 sleep의 사용법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!