线程休眠

来源:互联网 发布:破解学校电脑网络 编辑:程序博客网 时间:2024/06/06 02:13
package com.ajax;//线程休眠:该方法可以让当前正在执行的线程暂停一段时间,进入休眠等待状态让其他线程可以执行public class Example04 {public static void main(String[] args) throws Exception{new Thread(new SleepThread()).start();for(int i=1;i<=10;i++){if(i==5){Thread.sleep(2000);//当前线程休眠2秒}System.out.println("主线程正在输出:"+i);Thread.sleep(500);}}}class SleepThread implements Runnable{public void run(){for(int i=0;i<=10;i++){if(i==3){try{Thread.sleep(2000);}catch(InterruptedException e){e.printStackTrace();}}System.out.println("线程一正在输出:"+i);try{Thread.sleep(500);}catch(Exception e){e.printStackTrace();}}}}/*运行结果:主线程正在输出:1线程一正在输出:0主线程正在输出:2线程一正在输出:1线程一正在输出:2主线程正在输出:3主线程正在输出:4线程一正在输出:3主线程正在输出:5线程一正在输出:4主线程正在输出:6线程一正在输出:5主线程正在输出:7线程一正在输出:6主线程正在输出:8线程一正在输出:7主线程正在输出:9线程一正在输出:8主线程正在输出:10线程一正在输出:9线程一正在输出:10解释:运行结果可以看出当i=3的时候,线程一没有交替输出3,而是主线程接着输出,只有当线程休眠完了之后,两个线程菜会恢复交替执行*/

原创粉丝点击