当前位置: 首页 > backend >正文

java30

1.多线程

多线程实现方式:

继承Thread:

注意:使用的是start方法,而不是run方法

实现runnable:


 

利用Callable接口和Future接口方式实现:

总结:

线程类Thread的成员方法:

注意:父类没有throws异常,那么子类就不能throws,只能trycatch

线程的默认优先级是5(1最后,10最先)

yield作用:让线程尽可能的平分cpu的使用

join的作用:在线程1前面插入线程2,等线程2运行完全部代码再运行线程1

线程的生命周期:

线程的安全问题与同步代码块:

注意:线程在执行代码的时候,cpu执行权随时会被其他线程抢走。

不注意这个细节会出现重复和超出的问题

改进:

注意:锁的打开和关闭是自动执行的

同步方法:

买票:

改进:

StingBuilder与StringBuffer:

buffer的方法都是同步的,因此是多线程安全的,要是程序是单线程就使用builder

Lock锁:

买票改进:

死锁:

http://www.xdnf.cn/news/10948.html

相关文章:

  • 《TCP/IP 详解 卷1:协议》第4章:地址解析协议
  • 2025.6.3总结
  • 【记录】Python|Python支持if 1<a<2、if not a、if a is None这三种写法
  • JavaScript 对象展开语法
  • java29
  • 信息过载时,如何筛选重要信息
  • 把两个标签内容显示在同一行
  • BSRR对比BRR对比ODR
  • MySQL - Windows 中 MySQL 禁用开机自启,并在需要时手动启动
  • Vue3 中使用 i18n
  • 【MATLAB去噪算法】基于CEEMD联合小波阈值去噪算法(第三期)
  • 离散数学_数理逻辑(二):命题逻辑的推理
  • CET6 仔细阅读 24年6月第三套-C2 可变性这一块
  • 代码随想录算法训练营第60期第五十六天打卡
  • 系统思考:短期利益与长期系统影响
  • 线程池RejectedExecutionException异常
  • ssh登录wsl2
  • C++ 17中的通用类型any
  • 从“Bucharest”谈起:词语翻译的音译与意译之路
  • Qt 事件传递的完整流程
  • 运维三剑客——awk
  • My Retro App项目开发指南
  • 对 `llamafactory-cli api -h` 输出的详细解读
  • MySQL备份与恢复实战指南
  • 社群营销的一些门道
  • 项目任务,修改svip用户的存储空间。
  • 网络攻防技术八:身份认证与口令攻击
  • 力扣刷题Day 69:搜索二维矩阵(74)
  • Python趣学篇:Pygame重现经典打砖块游戏
  • Axure形状类组件图标库(共8套)