14.3.2多线程常用操作方法----线程休眠

当一个线程启动后会按照既定的结构快速执行完毕,如果需要暂缓线程的执行速度,就可以利用Thread类中提供的休眠方法完成。
在这里插入图片描述
在进程休眠时有可能会产生中断异常InterruptedException,中断异常属于Exception的子类,程序中必须强制性进行该异常的捕获与处理。

范例:线程休眠

public class JavaThread315 {
       public static void main(String[] args) {
		      Runnable run=()->{                   //Runnable实例对象
		    	  for (int i = 0; i < 10; i++) {
					System.out.println(Thread.currentThread().getName()+"、x="+i);
					try {
						Thread.sleep(1000);                           //暂缓1秒(1000毫秒)执行
					} catch (InterruptedException e) {                  //强制性异常处理
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
				}
		      };
		      for(int num=0;num<5;num++) {
		    	   new Thread(run,"线程对象-"+num).start();    //启动线程
		      }
	}
}

执行结果

线程对象-0、x=0
线程对象-2、x=0
线程对象-1、x=0
线程对象-3、x=0
线程对象-4、x=0
线程对象-0、x=1
线程对象-1、x=1
线程对象-2、x=1
线程对象-3、x=1
线程对象-4、x=1
线程对象-1、x=2
线程对象-2、x=2
线程对象-0、x=2
线程对象-3、x=2
线程对象-4、x=2
线程对象-1、x=3
线程对象-0、x=3
线程对象-2、x=3
线程对象-3、x=3
线程对象-4、x=3
线程对象-1、x=4
线程对象-2、x=4
线程对象-0、x=4
线程对象-3、x=4
线程对象-4、x=4
线程对象-1、x=5
线程对象-0、x=5
线程对象-2、x=5
线程对象-3、x=5
线程对象-4、x=5
线程对象-1、x=6
线程对象-0、x=6
线程对象-2、x=6
线程对象-4、x=6
线程对象-3、x=6
线程对象-0、x=7
线程对象-2、x=7
线程对象-1、x=7
线程对象-4、x=7
线程对象-3、x=7
线程对象-2、x=8
线程对象-1、x=8
线程对象-0、x=8
线程对象-3、x=8
线程对象-4、x=8
线程对象-2、x=9
线程对象-1、x=9
线程对象-0、x=9
线程对象-3、x=9
线程对象-4、x=9

本程序设计了5个线程对象,并且每一个线程对象执行时都需要暂停一秒,但是需要提醒读者的是,多线程的启动与执行都是由操作系统随机分配的,虽然看起来这5个线程的休眠是同步进行的,但是也有先后顺序,只不过由于代码的执行速度较快,不易观察到。下图分许多个线程对象执行一次run()方法的过程。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值