Java多线程-创建线程的多种方式

Java多线程_创建线程的多种方式
一、线程与进程
​ 几乎所有的操作系统都支持进程的概念,所有运行中的任务都对应一个进程(Process)。当一个程序进入内存运行时,即变成一个进程。进程是处于运行中的程序,并且具有一定的独立功能,进程是系统进行资源调度的一个独立单位。

​ 一般而言,进程包含三个特征:独立性、动态性、并发性。

​ 一个程序运行后至少会有一个进程,一个进程可以包含多个线程,但至少要有个线程。

​ 归纳起来就是说:操作系统可以同时执行多个任务,每个任务就是进程;进程可以同时执行多个任务,每个任务就是线程。

温馨提示(并发性与并行性):
​ 并发性(concurrency)和并行性(parallel)是两个概念,并行是指在同一时刻,有多条指令在多个处理器上同时执行;并发是指在同一时刻只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程被同时执行的效果。

二、多线程的优势
​ 线程在程序中是独立的、并发的执行流,与分隔的进程相比,线程分隔程度要小很多。当操作系统创建一个进程时,必须为该进程分配独立的内存空间,并分配大量的相关资源;但创建线程则简单很多,因此使用多线程来实现并发比使用多进程实现并发要强很多。

​ 1、进程之间不能共享内存,但线程之间共享内存非常容易,

​ 2、系统创建进程时需要为该进程重新分配系统资源,但创建线程则代价要小很多,因此使用多线程实现多任务并发要比进程效率高很多。

​ 3、Java语言内置了多线程功能支持,而不是单纯的作为底层操作系统的调度模式,从而简化了Java的多线程编程。

三、线程的创建和启动
​ Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例,以下则介绍其中三种常见创建线程对象的方法。

1、继承Thread类创建线程类
​ 创建步骤:

​ ①定义Thread类的子类,并重写该类的run()方法,该run()方法体就代表了线程需要完成的任务。因此吧run()方法称为线程执行体。

​ ②创建Thread子类的实例,即创建了线程对象。

​ ③调用线程对象的start()方法来启动该线程。

/**
 * @program: code
 * @description: 通过继承Thread类创建线程对象
 * @create: 2022-02-28 20:29
 **/
public class Thread_jc extends Thread {
    private int i;
    //重写run()方法,ru

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值