javaEE线程

本文介绍了线程相关知识,指出线程是“执行流”,比进程更轻量。阐述了进程和线程的区别,如进程是资源分配基本单位,线程是调度运行基本单位等。还介绍了Java标准库中用Thread类表示线程,以及创建线程的四种方式,包括继承Thread类、实现Runnable接口等。

线程:一个线程就是一个“执行流”

引入线程的原因:线程比进程更轻量

进程和线程的区别:

①进程是操作系统资源分配的基本单位,线程是操作系统调度运行的基本单位

②进程包含线程,一个进程可以包含多个线程,每个进程至少存在一个线程

③进程有独立的内存空间和文件描述符表,同一个进程中的多个线程之间共享同一份内存空间和文件描述符表

④进程之间具有独立性,一个进程阻塞不会影响另一个进程。同一个进程里的多个线程之间,一个线程阻塞可能影响整个进程,并且影响其他的线程

java标准库中提供了Thread类来表示一个线程

创建线程:

①继承Thread类

run方法重写父类的方法,是线程的入口方法

run方法是一个特殊的方法,只能被自动调用,在myThread里面的其它普通方法,必须要手动调用

t.start():表示启动线程

main方法为主线程

当在主线程中也写一个死循环打印的时候,查看结果是没有顺序的打印主线程和子线程

所以多个线程在cpu上调度执行的顺序是不确定的

②实现Runnable接口

Runnable是一个接口,这个接口里面的方法都是抽象方法,所以要重写抽象方法

③匿名内部类创建线程:大括号“{}”放到谁的后面就是针对哪个类创建的匿名内部类

匿名内部类创建Thread子类对象

匿名内部类创建Runnable子类对象

④lambda表达式创建线程(最常用):()->{}

()里面放参数

{}里面放函数体

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值