线程学习小结

线程:一个程序内部的一条执行流程

多线程:软硬件实行的多条执行流程的技术(多线程由cpu负责调度执行)

多线程的本质就是多个程序同时执行,但是进程同一时间只能有一个,所以线程会被cpu调度并且分配时间片

线程创建方式一:Thread类:启动线程需要调用strat方法不能调用run方法 不要把主线程任务放在启动子线程之前 run方法可以自己重写,在线程启动的时候会自动调用

线程创建方法二:实现Runnable接口,重写run方法。Runnable接口实现后只是创建了任务方法,要想实现线程还得交给Thread对象去调用start方法

线程创建方式三:实现callable接口和FutureTask类实现

1.创建任务对象,实现类实现callable接口,重写方法,封装需要做的事情,返回需要的数据 把callable类型的对象封装成FutureTask(线程任务对象)

2.交给Thead的start()方法调用,最后线程执行完毕后,通过FutureTask的get方法去获取线程任务的执行结果

前面俩种创建方式如果运行完后有数据需要返回,重写的run方法不能直接返回结果,第三个方式可以直接返回运行后的结果

Thread常用方法

java 复制代码
run() start()

getName()返回String类型,获取线程的名字

currentThread()静态方法,获取当前正在执行的线程对象

setName()给线程取名,也可在初始化时命名

sleep()静态方法 让当前线程休息

join()先执行该线程
相关推荐
DeepModel2 分钟前
第15章 多模态学习
深度学习·学习·机器学习
硅基动力AI2 分钟前
如何判断一个关键词值不值得做?
java·前端·数据库
不吃橘子的橘猫8 分钟前
《集成电路设计》复习资料2(设计基础与方法)
学习·算法·fpga开发·集成电路·仿真·半导体
重生之后端学习1 小时前
78. 子集
java·数据结构·算法·职场和发展·深度优先
那起舞的日子1 小时前
斐波那契数列
java·算法
不吃橘子的橘猫2 小时前
《集成电路设计》复习资料4(Verilog HDL概述)
学习·算法·fpga开发·集成电路·仿真·半导体
宇木灵2 小时前
C语言基础-五、数组
c语言·开发语言·学习·算法
楼田莉子2 小时前
Linux学习:线程的同步与互斥
linux·运维·c++·学习
想用offer打牌2 小时前
一站式了解接口防刷(限流)的基本操作
java·后端·架构
姜源Jerry2 小时前
【Trae】Trae IDE&SOLO浅尝
java·ide·ai