2.线程的八大核心基础知识之启动线程的正确和错误方式

Posted zhihaospace

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.线程的八大核心基础知识之启动线程的正确和错误方式相关的知识,希望对你有一定的参考价值。

一.概述

技术图片

 

 

 二.start()和run()的比较

1.代码演示

分析:

  • 调用run方法则是由主线程执行的

  • 调用start方法则是由新创建的线程执行的

/**
 * 对比start和run两种启动线程的方式
 */
public class StartAndRunMethod {

    public static void main(String[] args) {
        //1.直接调用run方法
        Runnable runnable = ()->{
            System.out.println(Thread.currentThread().getName());
        };

        runnable.run(); //main 

        //2.使用start方法
        new Thread(runnable).start();   //Thread-0
    }
}

2.start方法原理解读

(1)start方法含义

  • 启动新线程

  • 准备工作

  • 不能重复start()

(2)start源码分析

 

以上是关于2.线程的八大核心基础知识之启动线程的正确和错误方式的主要内容,如果未能解决你的问题,请参考以下文章

笔记-线程八大核心总纲

3.线程的八大核心基础知识之如何正确停止线程

7.线程的八大核心基础知识之未捕获异常如何处理

线程八大基础核心六(线程属性)

线程八大基础核心四(线程生命周期)

线程八大基础核心一(创建线程的方式)