多线程
作者:@冰山醉酒
本文为作者原创,转载请注明出处:https://www.cnblogs.com/douFrank/p/16117950.html
1|0多线程
-
thread class继承thread类
-
Runnable接口,实现Runnable接口
-
Callable接口,实现Callable接口
2|0thread
3|0Runnable
4|0Callable
5|0代理模式
6|0Lambda
为什么用:
-
避免匿名内部类定义过多
-
可以让你的代码看起来很简洁
-
去掉了一堆没有意义的代码,只留下核心的逻辑
任何接口,如果只包含唯一一个抽象方法,那它就是一个函数式接口。
对于函数式接口,我们可以通过lambda表达式来创建该接口对象
7|0线程操作
停止线程:不推荐使用JDK提供的stop()、destroy()方法,推荐线程自己停下来,简易使用一个标志位进行终止变量当flag=false,则终止线程运行
线程休眠:每个线程都有一把锁,睡眠不会释放锁。
线程礼让:礼让线程,让当前正在执行的线程停止,但不阻塞。将线程从运行状态转为就绪状态,让CPU从新调度,礼让不一定成功,看CPU心情。
线程强制执行:join合并线程,代线程执行完成后,再执行其他线程,其他线程阻塞。可以想象成插队。
线程优先级;现成的优先级用数字表示,范围从1~10,使用getPriority()、setPriority()改变或获取优先级。越高限制性的可能性就越大。但不一定就肯定先执行。
守护线程:线程分为用户线程和守护线程,虚拟机必须保证用户线程执行完毕,虚拟机不用等待守护线程执行完毕
队列同步:队列+锁
方法里面需要修改的内容才需要锁,锁的太多,浪费资源。
8|0死锁
9|0Lock锁
lock与snychronized的对比
10|0生产者与消费者问题
11|0线程池
__EOF__

本文作者:冰山醉酒
本文链接:https://www.cnblogs.com/douFrank/p/16117950.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/douFrank/p/16117950.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义