首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
高并发
订阅
istayreal1123
更多收藏集
微信扫码分享
微信
新浪微博
QQ
29篇文章 · 0订阅
一文学会ReentrantReadWriteLock(读写锁)
如果需要并发地访问竞争资源,你会怎么做?答案大家都知道,对临界区上锁,即对将要访问到竞争资源的代码进行所控制。进一步的,如果访问更多的是读操作,而更多的写操作,那你又会怎么做?...
别再纠结线程池大小/线程数量了,没有固定公式的
那么理论上,我一个线程只需要不停的执行指令,就可以跑满一个核心的利用率。 从上图可以看到,CPU利用率和上一步一样,还是所有核心100%,不过此时负载已经从11.x增加到了22.x(load average解释参考https://scoutapm.com/blog/unders…
Java并发编程面试视角
答:使用多线程可提高性能,主要是能降低延迟,提高吞吐量。 那么想要提高性能,对应的方法主要两个方向:一是优化算法,二是将硬件的性能发挥到极致。而在并发编程领域,提升性能本质上就是提升硬件的利用率,再具体点来说,就是提升 I/O 的利用率和 CPU 的利用率。并发编程不是要解决单…
浅谈synchronized与Object.wait/notify原理
synchronized是Java中常用的锁机制,synchronized+Object.wait/notify是常用的等待唤醒机制,那它们的实现原理是什么呢?本文就synchronized与Object.wait/notify为例谈谈以下内容。 synchronized锁升级…
Java 多线程 : 简简单单原子类
原子类继承于 Number 接口 , 归属于java.util.concurrent.atomic 包中 , 原子类的主要作用是为了解决 synchronized 处理原子操作 资源消耗过高 的问题 ,原子类的CAS 基于 Unsafe 实现 . 一. 原子类的简述 原子类适用…
ThreadLocal深度解析
之前在Handler的源码解析中,我们提过一句ThreadLocal。知道它是一种线程安全的操作方式。那么它的内部原理是什么呢?这次就一探究竟吧。 这里的测试案例通过ThreadLocal,只需要进行set,get即可。线程安全的处理直接由内部来进行处理。 对于源码的解析工作,…
牛啊牛啊!这篇多线程技术笔记,阿里架构师看了都说好!
程序:为完成特定任务,使用某种语言编写的一组指令的集合,是一段静态的代码。 进程:程序的一次运行过程,或者是正在运行的一个程序。进程是资源分配的基本单位。 线程:线程由进程进一步细化而来,是一个程序内部的一条执行路径。线程是调度和执行的单位,每个线程拥有独立的运行栈和程序计数器…
Java 多线程 :漫谈多线程模型
一 . happens-before 模型 如果一个操作 happens-before 另一个操作,那么第一个操作的执行结果,将对第二个操作可见,而且第一个操作的执行顺序,排在第二个操作之前。 两个操作之间存在 happens-before 关系,并不意味着一定要按照 happ…
JAVA中各种锁介绍
这三种锁特指synchronized锁的状态,通过对象头中的mark work字段表示锁状态。 自始至终,对这把锁都不存在竞争,只需要做个标记,这就是偏向锁,每个对象都是一个内置锁(内置锁是可重入锁),一个对象被初始化后,还没有任何线程来获取它的锁时,那么它就是可偏向的,当有线…
多线程与高并发笔记
1. 实现Runnable 重写run方法继承Thread 重写run方法线程池创建 Executors.2. Thread.Thread.例如Thread t1, t2,在t2的run方法中调用t1.3. 状态使用场景NEWThread被创建之后,未start之前RUNNABL...