首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
军儿呀
更多收藏集
微信扫码分享
微信
新浪微博
QQ
6篇文章 · 0订阅
再谈synchronized实现(锁重入,锁膨胀)
基本使用 synchronized放在实例方法上,锁对象是当前的this对象 synchronized放在类方法(静态方法)上,锁对象是方法区中的类对象 synchronized修饰代码块,也就是sy
啃碎并发(二):Java线程的生命周期
当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,它要经过 新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)5种状态。尤其是当线程启动以后,它不可能一直"霸占"着CPU独…
如何优雅的使用和理解线程池
可见线程池的重要性。 线程是稀缺资源,不能频繁的创建。 解耦作用;线程的创建于执行完全分开,方便维护。 应当将其放入一个池子中,可以给其他任务进行复用。 谈到线程池就会想到池化技术,其中最核心的思想就是把宝贵的资源放到一个池子中;每次使用都从里面获取,用完之后又放回池子供其他人…
Java并发实战(六) 任务执行
任务交由子线程处理,提高了响应性和吞吐量。 任务处理的代码必须是线程安全的。 线程生命周期的开销非常高。 资源消耗。可运行线程多于可用处理器的数量,会有线程闲置占用内存,且大量线程竞争CPU时将产生其他性能开销。 稳定性。不同平台可创建线程的数量有限制。 Web服务器不会再高负…
啃碎并发(一):Java线程总述与概念
在JDK5之前,Java多线程以及其性能一直是个软肋,只有synchronized、Thread.sleep()、Object.wait/notify这样有限的方法,而synchronized的效率还特别地低,开销比较大。 在JDK5之后,相对于前面版本有了重大改进,不仅在Ja…
Java并发实践(七)取消与关闭
如果外部代码能在某个操作正常完成之前将其置入“完成”状态,那么这个操作就可以成为可取消的。 用户取消请求:用户点击图形界面程序中的“取消”按钮,或者通过管理接口来发出取消请求。 有时间限制的操作:例如,某个应用程序需要在有限时间内搜索问题空间,并在这个时间内历最佳的解决方案。当…