Java 线程Thread Runable

创建线程(线程就是Thread对象)

一:创建线程的两种方法

  1. 继承Thread类,重写run方法
  2. 使用Thread(Runable runable)构造函数,创建Thread对象

二:使用Runable方法创建线程的优点

  1. Runnable适合于多个相同程序代码线程去处理统一资源的情况
  2. Runnable避免由于java的单继承机制带来的局限。可以再继承其他类的同时,还能实现多线程的功能。
  3. Runnable增加程序的健壮性。代码能够被多个线程共享。

三:Thread对象的方法

  1. start():用来启动一个线程,start()后此线程处于就绪(可运行)状态,并没有运行,一旦得到cpu时间片,就开始自动执行run()方法,无需等待run方法执行完毕,即可继续执行下面的代码===体现多线程
  2. run()方法:继承Thread类必须重写run方法,在run方法中定义具体要执行的任务。如果用户主动去调用run()方法,则run()只能作为一个普通方法执行,不能体现多线程。
  3. sleep(long millis),sleep(long millis,int nanoseconds):让线程睡眠,让线程进入阻塞(不可运行)状态。当睡眠时间到时,线程重新进入就绪(可运行)状态。不会释放锁。
  4. yield()方法:不会让线程进入阻塞状态,而是让线程重回就绪状态.让拥有相同优先级的线程有获取CPU执行时间的机会.不会释放锁。
  5. join()方法: join():如果在main线程中执行thread0.join(),则main线程会等待thread0线程执行完毕再执行main线程。join(long millis)     //参数为毫秒,main线程会等待thread0线程执行millis后再执行main线程。join(long millis,int nanoseconds)    //第一参数为毫秒,第二个参数为纳秒  与上面类似


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值