• java基础 多线程创建方式


    第一种继承Thread类 重写run方法

    class CreateThread extends Thread {
        // run方法中编写 多线程需要执行的代码
        publicvoid run() {
            for (inti = 0; i< 10; i++) {
                System.out.println("i:" + i);
            }
        }
    }
    public class ThreadDemo {
    
        public static void main(String[] args) {
            System.out.println("-----多线程创建开始-----");
            // 1.创建一个线程
            CreateThread createThread = new CreateThread();
            // 2.开始执行线程 注意 开启线程不是调用run方法,而是start方法
            System.out.println("-----多线程创建启动-----");
            createThread.start();
            System.out.println("-----多线程创建结束-----");
        }
    
    }

    第二种实现Runnable接口,重写run方法

    class CreateRunnable implements Runnable {
    
        @Override
        publicvoid run() {
            for (inti = 0; i< 10; i++) {
                System.out.println("i:" + i);
            }
        }
    
    }
    
    /**
     * 
     * @classDesc: 功能描述:(实现Runnable接口,重写run方法)
     * @author: 余胜军
     * @version: v1.0
     * @copyright:上海每特教育科技有限公司
     */
    public class ThreadDemo2 {
        public static void main(String[] args) {
            System.out.println("-----多线程创建开始-----");
            // 1.创建一个线程
            CreateRunnable createThread = new CreateRunnable();
            // 2.开始执行线程 注意 开启线程不是调用run方法,而是start方法
            System.out.println("-----多线程创建启动-----");
            Thread thread = new Thread(createThread);
            thread.start();
            System.out.println("-----多线程创建结束-----");
        }
    }

    第三种使用匿名内部类方式

    public class ThreadDemo4 {

      public static void main(String[] args) {
        System.out.println("创建线成功!");
        //使用匿名内部类方式创建线程
        new Thread(new Runnable() {

        @Override
        public void run() {
          for (int i = 0; i < 100; i++) {
          System.out.println("run() i:" + i);
          }
          }
        }).start();

        System.out.println("创建线結束!");
        // thread.start();
        for (int i = 0; i < 100; i++) {
          System.out.println("main() i:" + i);
        }
      }

    }


    常用线程api方法

    start()

    启动线程

    currentThread()

    获取当前线程对象

    getID()

    获取当前线程ID      Thread-编号  该编号从0开始

    getName()

    获取当前线程名称

    sleep(long mill)

    休眠线程

    Stop()

    停止线程

    常用线程构造函数

    Thread()

    分配一个新的 Thread 对象

    Thread(String name)

    分配一个新的 Thread对象,具有指定的 name正如其名。

    Thread(Runable r)

    分配一个新的 Thread对象

    Thread(Runable r, String name)

    分配一个新的 Thread对象

  • 相关阅读:
    2018-8-18 训练神经网络笔记
    ffmpeg解码视频为图片和将图片合成一个MP4视频
    minikube start error
    按顺序将目录下的所有文件的绝对路径写入文件中
    ssh远程免密登录
    Ubuntu默认的awk一直报语法错误
    ffmpeg常用操作
    ssh免密登录server
    cv::namedWindow是非线程安全的
    lingcrypt源码安装undefined reference to ...
  • 原文地址:https://www.cnblogs.com/angdh/p/13443537.html
Copyright © 2020-2023  润新知