首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
要这铁棒有何用丶
更多收藏集
微信扫码分享
微信
新浪微博
QQ
15篇文章 · 0订阅
别再纠结线程池大小/线程数量了,没有固定公式的
那么理论上,我一个线程只需要不停的执行指令,就可以跑满一个核心的利用率。 从上图可以看到,CPU利用率和上一步一样,还是所有核心100%,不过此时负载已经从11.x增加到了22.x(load average解释参考https://scoutapm.com/blog/unders…
强如 Disruptor 也发生内存溢出?
OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异常(数组越界、空指针等)来说这类问题是很难定位和解决的。 本文以最近碰到的一次线上内存溢出的定位、解决问题的方式展开;希望能对碰到类似问题的同学带来思路和帮助。 主要从表现-->排查-->定位-->解…
你应该知道的高性能无锁队列Disruptor
听到队列相信大家对其并不陌生,在我们现实生活中队列随处可见,去超市结账,你会看见大家都会一排排的站得好好的,等待结账,为什么要站得一排排的,你想象一下大家都没有素质,一窝蜂的上去结账,不仅让这个超市崩溃,还会容易造成各种踩踏事件,当然这些事其实在我们现实中也是会经常发生。 当然…
深入掌握底层源码常见的 CAS 原子编程
1. 无锁编程产出背景 2. CAS 如何实现的无锁编程 3. CAS 使用中的 “ABA” 痛点 4. 如何解决 “ABA” 问题
被大厂面试官连环炮轰炸的ThreadLocal (吃透源码的每一个细节和设计原理)
ThreadLocal 是面试过程中非常高频的一个类,这类的复杂程度绝对是可以带出一系列连环炮的面试轰炸。biu biu biu ~~~~. 一直觉得自己对这个类很了解了,但是直到去看源码,接二连三的技术浮出水面(弱引用,避免内存溢出的操作,开放地址法解决hash 冲突,各种内…
并发Bug之源有三,请睁大眼睛看清它们
谈到可见性,要先引出 JMM (Java Memory Model) 概念, 即 Java 内存模型,Java 内存模型规定,将所有的变量都存放在 主内存 中,当线程使用变量时,会把主内存里面的变量 复制 到自己的工作空间或者叫作 私有内存 ,线程读写变量时操作的是自己工作内存…
高性能无锁队列 Disruptor 初体验
最近一直在研究队列的一些问题,今天楼主要分享一个高性能的队列 Disruptor 。 它是英国外汇交易公司 LMAX 开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题。基于 Disruptor 开发的系统单线程能支撑每秒600万订单。 目前,包括 Apache Stor…
面试必备:Java volatile的内存语义与AQS锁内存可见性[精品长文]
保证此变量对所有线程的可见性,这里的 “可见性”是指当一条线程修改了这个变量的值,新值对于其他线程来说是可以立即得知的。 禁止指令重排序优化。 Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量主要…
图解 Java 线程安全
按操作系统中的描述,线程是 CPU 调度的最小单元,直观来说线程就是代码按顺序执行下来,执行完毕就结束的一条线。 举个 🌰,富土康的一个组装车间相当于 CPU ,而线程就是当前车间里的一条条作业流水线。为了提高产能和效率,车间里一般都会有多条流水线同时作业。同样在我们 And…
面试必备:Java线程池解析
掌握线程池是后端程序员的基本要求,相信大家求职面试过程中,几乎都会被问到有关于线程池的问题。我在网上搜集了几道经典的线程池面试题,并以此为切入点,谈谈我对线程池的理解。如果有哪里理解不正确,非常希望大家指出,接下来大家一起分析学习吧。 面试问题2:按线程池内部机制,当提交新任务…