线程学习小结

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

多线程:软硬件实行的多条执行流程的技术(多线程由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()先执行该线程
相关推荐
云烟成雨TD7 分钟前
Agent Scope Java 2.x 系列【5】智能体抽象层
java·人工智能·agent
我想我不够好。10 分钟前
贝利亚 扎克
学习
阿伟AI说11 分钟前
Codex 桌面版接入国产模型系列二:Codex++
java·开源软件·ai编程·腾讯云ai代码助手
love_muming32 分钟前
链表每日一练
java·开发语言·数据结构·链表·idea·每日一练
MartinYeung533 分钟前
[论文学习]CAMIA:基于上下文感知的成员资格推断攻击:针对预训练大型语言模型的深度分析
人工智能·学习·语言模型
范什么特西35 分钟前
重点:mybatis注意细节
java·mysql·mybatis
chase。41 分钟前
【学习笔记】Unified World Models:基于视频-动作耦合扩散的机器人预训练新范式
笔记·学习·音视频
乐观勇敢坚强的老彭43 分钟前
GESP一级核心算法:循环与条件判断的结合
java·数据结构·算法
雪宫街道1 小时前
SpringBoot 向 IOC 容器注册组件的两种姿势:@Configuration 与 @Import
java·spring boot·后端·spring
北城以北88881 小时前
虚拟机安装JDK,Tomcat,部署项目
java·开发语言·tomcat