java多线程

*多线程

1.多线程

程序: 是为了完成特定任务,用某种语言编写的一组指令的集合,即指一段静态的代码。

进程:每个独立执行的程序称为进程,在操作系统中**进程**是进行系统资源分配、

调度和管理的最小单位,进程在执行过程中拥有独立的内存单元。

线程: 同一时刻,多个任务并发执行,构成多线程。线程是CPU调度和分派的基本单位。

注意:多线程本质上不是多个线程并行执行,只是CPU分配给每个线程的实现片段极小,

肉眼根本分辨不出,好似同一时刻CPU同时处理多个任务。

2.多线程实现

-继承Thread类

-实现Runnable接口:多个线程共享同一资源时

-实现Callable接口

-通过线程池实现

3.多线程生命周期

long getId()

返回此线程的标识符。

String getName()

返回此线程的名称。

static Thread currentThread()

返回对当前正在执行的线程对象的引用。

void setPriority(int newPriority)

更改此线程的优先级。

void join()

等待这个线程死亡。

static void sleep(long millis)

使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。

static void yield() 对调度程序的一个暗示,即当前线程愿意产生当前使用的处理器。

void interrupt()

中断这个线程。

4.线程安全

相关推荐
中国lanwp几秒前
Spring Boot 中使用 Lombok 进行依赖注入的示例
java·spring boot·后端
胡萝卜的兔几秒前
golang -gorm 增删改查操作,事务操作
开发语言·后端·golang
屁股割了还要学5 分钟前
快速过一遍Python基础语法
开发语言·python·学习·青少年编程
凌辰揽月1 小时前
AJAX 学习
java·前端·javascript·学习·ajax·okhttp
永日456702 小时前
学习日记-spring-day45-7.10
java·学习·spring
武当豆豆2 小时前
C++编程学习阶段性总结
开发语言·c++
学不动CV了2 小时前
C语言32个关键字
c语言·开发语言·arm开发·单片机·算法
你怎么知道我是队长3 小时前
python-enumrate函数
开发语言·chrome·python
小屁孩大帅-杨一凡3 小时前
如何解决ThreadLocal内存泄漏问题?
java·开发语言·jvm·算法
大熋3 小时前
Playwright Python 教程:网页自动化
开发语言·python·自动化