java
文章平均质量分 74
TechIsCool
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一次线上大日志打挂机器引发的思考
本文通过一次日志打满问题引发的一次思考,探讨了常用日志问题的解决套路,引申思考了2个技术问题,其一:如何大日志预防与监控;其二:老应用如何快速支持日志降级能力,并在最后提供了一点技术上的解法思路供参考。原创 2022-02-22 15:58:47 · 329 阅读 · 0 评论 -
Wait/Notify线程通信方式
线程状态机 WATING和TIMED_WAITING被唤醒后,是进入BLOCKED阻塞状态,进入阻塞同步队列 线程状态与锁状态关系 ● 锁池状态也就是同步队列,当调用notify和notifyall时,线程只是先进入了BLOCKED状态,只有拿到对象o的锁,才能唤醒线程;当调用wait时,会释放锁,并进入等待队列,同时线程状态变为WAITING。 ● wait状态唤醒有三种方式 ○ being notified, 即调用notify()或notifyAll() ○ interrupted, 这种方式会抛原创 2022-03-09 23:36:16 · 260 阅读 · 0 评论 -
LockSupport线程阻塞器
语义说明 线程阻塞器,用于锁和同步场景。底层有个二元信号量(即1个牌),当持有令牌时,调用park会直接返回,否则阻塞。当执行unpark时,可以获取令牌。该类解决了阻塞轮询问题(busy wait)。 park(blocker)设置阻塞对象(实际写入Thread.parkBlocker属性),一般就用this即可,用于记录阻塞原因,可以通过getBlocker(Thread)获取 park返回方式有 Thread.interrupt() unpark 本身持有令牌 超时/到时间parkUntil,并不原创 2022-03-09 23:30:52 · 398 阅读 · 0 评论
分享