创建线程之继承Thread

程序:为了完成特定的任务,用某种语言编写的一组指令的集合。
进程:正在进行的一个程序。是一个动态的过程,有生命周期。
线程:进程的进一步细化,是程序内部的一条执行路径。

创建线程继承Thread

  创建继承于thread类的子类
  重写Thread类的run();
  创建Thread类的子类的对象
  通过此对象调用start();


  测试Thread的常用方法:
     1.start():启用当前线程,调用当前线程的run()
     2.run():重写Thread的方法,将创建的线程要执行的操作声明在此方法中
     3.currentThread():静态方法,返回执行当前的代码线程
     4.getName():获取当前线程的名字
     5.setName():设置当前线程的名字
     6.this.yield():释放当前CPU
     7.join():在线程A中调用线程B的join(),此时线程A进入阻塞状态,直到线程B进行完
     8.stop():强制线程结束
     9:sleep():
public class HelloThreadTest {
    public static void main(String[] args){
        HelloThread  h1 = new HelloThread();

        //线程起名
        h1.setName("线程一");
        //启动线程
        h1.start();
       //主线程命名
        Thread.currentThread().setName("主线程");
        for(int i=0;i<100;i++){
            if(i%2==0){


                try {
                    Thread.sleep(1000);
                }catch(InterruptedException e){
                    e.printStackTrace();
                }
                System.out.println(Thread.currentThread().getName()+":"+i);
            }
            //
            if(i==20){
               try {
                   h1.join();
               }catch(InterruptedException e){
                   e.printStackTrace();
               }
            }
        }
    }

}
class HelloThread extends Thread{
    public  void run(){
        for(int i=0;i<100;i++){
            if(i%2==0){
                System.out.println(Thread.currentThread().getName()+":"+i);
            }
            if(i % 20 == 0){
                this.yield();//释放分线程
            }
        }
    }


}
上一篇:在vue中使用样式


下一篇:NX二次开发 拔模增量计算工具