Java线程常用的方法

    1. 常用的方法第一组
      1. setName //设置线程名称,使之与参数 name 相同
      2. getName //返回该线程的名称
      3. start //使该线程开始执行:Java 虚拟机底层调用该线程的 start0 方法
      4. run //调用线程对象 run 方法:
      5. setPriority //更改线程的优先级
      6. getPriority //获取线程的优先级
      7. sleep//在指定的毫秒数内让当前正在执行的线程休眠(暂停执行)
      8. interrupt //中断线程(不是终止线程)
    2. 注意事项和细节
      1. start 底层会创建新的线程,调用run,run 就是一个简单的方法调用,不会启动新线程
      2. 线程优先级的范围(MAX_PRIORITY = 10,MIN_PRIORITY = 1,NORM_PRIORITY = 5)
      3. interrupt,中断线程,但并没有真正的结束线程。所以一般用于中断正在休眠线程
      4. sleep:线程的静态方法,使当前线程休眠
    3. 线程常用方法的第二组
      1. yield:线程的礼让。让出cpu,让其他线程执行,但礼让的时间不确定,所以也不一定礼让成功
      2. join:线程的插队。插队的线程一旦插队成功,则肯定先执行完插入的线程所有的任务案例:创建一个子线程,每隔1s 输出 hello, 输出 20次,主线程每隔1秒,输出 hi,输出 20次.要求: 两个线程同时执行,当主线程输出 5次后,就让子线程运行完毕,主线程再继续
    4. 用户线程和守护线程
      1. 用户线程:也叫工作线程,当线程的任务执行完或通知方式结束
      2. 守护线程:一般是为工作线程服务的,当所有的用户线程结束,守护线程自动结束
      3. 常见的守护线程:垃圾回收机制
相关推荐
jimy112 小时前
C++ 中 xvalue 的 identity 存在哪里?和 lvalue 的 identity 有什么区别?
开发语言·c++·1024程序员节
yujunl13 小时前
U9 无授权的模式WebAPI开发的总结
开发语言·1024程序员节
zzu123zsw13 小时前
为什么 Python 做 Agent 总在并发中崩溃?拆解 Blockcell 在 Rust 下的 Host-Cell 隔离与自愈状态机
开发语言·python·rust·大模型·ai agent
xiaoye-duck13 小时前
《C++ 项目:手写大模型接入 SDK》Provider分析与实现
开发语言·c++·语言模型
Mr-Wanter13 小时前
Spring Boot 接口签名实践
java·spring boot
denlaku13 小时前
JDK 22 新特性详解
java·开发语言
余槐i14 小时前
开虚拟线程后接口反而更慢:JDK 21 synchronized 锁住载体线程的排查
java·spring boot·redis·mysql·性能优化
“AI国潮设计-小江”14 小时前
AIGC实战:Python+SDXL批量生成英歌舞IP立牌,解锁猪猪蛋糕“反差萌”流量密码(附完整API源码)
开发语言·人工智能·python·prompt·aigc
Sirens.14 小时前
网络通信基础:IP、端口、协议分层与数据封装
java·网络·网络协议·tcp/ip·java-ee·1024程序员节
H.莓飛14 小时前
【数据结构】排序_OJ题(二):划分与选择
linux·服务器·c语言·开发语言·数据结构·visual studio