• 初步接触线程——一点浅显的总结


    线程

    概念:线程是CPU调度的最小单位,在一个进程中至少会有一条由虚拟机发起的线程,成为主线程。

    线程有着生命周期,包括以下部分:

      (1)创建线程对象

      (2)线程启动  开始   start

      (3)CPU的调度:a.运行  running

              b.阻塞  blocked 

      (4)run方法结束  死亡  dead  

    对于线程的开启,有三种方法:

      (1)匿名内部类创建线程

      (2)自定义类继承  Thread

      (3)自定义类实现 Runnable接口

    匿名内部类:

      Thread thread = new Thread(){

        @Override

        public void run(){

          ...

        }

      };

      thread.start();  //线程启动的唯一方法

       

    自定义子类继承Thread:

      需要自定义一个子类继承Thread,开启线程

      class MyThread extends Thread{

        //自定义属性

          ...

        @Override

         public void run(){

            ...

         }

       

      public static void main(String[] args){

        new MyThread().start();

      }

    }

      

      

     自定义类实现Runnable接口:

      class MyRun implentments Runnable{

        //自定义属性

          ...

        @Overrride

        public void run(){

          ...

        }

        public static void main(String[] args){

        new Thread(new Myrun()).start();

        /*或者 

          Runnable ru = new MyRun();

          Thread thread = new Thread(ru);

          thread.start();

        */

        }

    }

      

      java中主要用到的两种方法:一种继承Thread ;一种实现Runnable接口

          extends Thread  implements Runnable

      其中Thread是Runnable接口的子类,Runnable可以实现资源的共享,

    而Thread方法却只能继承一个父类,所以Runnable的范围比Thread广。

  • 相关阅读:
    7、JsonCpp简单使用(3)
    8、mysql外键(FOREIGN KEY)的简单使用
    7、mysql创建数据库失败,提示Access denied for user ''@'localhost'
    6、JsonCpp简单使用(2)
    ASP.NET2.0快速入门--高级数据方案(3)
    DELL电脑系统恢复出常值
    一步一步学习ObjectDataSource(1)
    来自微软的ASP.NET2.0开源代码
    ASP.NET2.0 Person Web Site:将图片以二进制的从数据库读取
    ASP.NET2.0快速入门--高级数据方案(中)
  • 原文地址:https://www.cnblogs.com/afeiiii/p/13062362.html
Copyright © 2020-2023  润新知