首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java并发
订阅
anan
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
Andoird性能优化 - 死锁监控与其背后的小知识
以死锁作为例子,讲述我们android开发中如何对线程锁进行监控,同时也会涉及art线程的原理与如何绕开系统限制调用dl系列系统调用
Kotlin协程的并发控制
目前很多开发组都用上协程来处理异步任务了,但是有的地方协程提供的原生API还是不足以应付,比方说一些SDK提供了传入Executor的接口,这时候我们可以封装一下协程来实现。
面试中单例模式有几种写法?
纠结单例模式有几种写法有用吗?有点用,面试中经常选择其中一种或几种写法作为话头,考查设计模式和coding style的同时,还很容易扩展到其他问题。这里讲解几种猴哥常用的写法,但切忌生搬硬套,去记“茴香豆的写法”。编程最大的乐趣在于“know everything, cont…
浅谈偏向锁、轻量级锁、重量级锁
为了换取性能,JVM在内置锁上做了非常多的优化,膨胀式的锁分配策略就是其一。理解偏向锁、轻量级锁、重量级锁的要解决的基本问题,几种锁的分配和膨胀过程,有助于编写并优化基于锁的并发程序。 内置锁是JVM提供的最便捷的线程同步工具,在代码块或方法声明上添加synchronized关…
volatile关键字的作用、原理
在只有双重检查锁,没有volatile的懒加载单例模式中,由于指令重排序的问题,我确实不会拿到两个不同的单例了,但我会拿到“半个”单例。 而发挥神奇作用的volatile,可以当之无愧的被称为Java并发编程中“出现频率最高的关键字”,常用于保持内存可见性和防止指令重排序。 M…
搞懂AOP之三,偏序排序
先说一下大家都比较熟悉的东西。回忆一下,我们如果想向容器中加入自定义的切面该怎么做?两种方法: 我们自定义Advisor注入到容器中。 利用@Aspect标示一个类为切面配置类,并利用@Around, @Before, @After, @AfterReturning, @Aft…
一文解决内存屏障
内存屏障是硬件之上、操作系统或JVM之下,对并发作出的最后一层支持。再向下是是硬件提供的支持;向上是操作系统或JVM对内存屏障作出的各种封装。内存屏障是一种标准,各厂商可能采用不同的实现。 本文仅为了帮助理解JVM提供的并发机制。首先,从volatile的语义引出可见性与重排序…
JMM 最最最核心的概念:Happens-before 原则
Happens-before 是 JMM 最核心的概念。对应 Java 程序员来说,理解 Happens-before 是理解 JMM 的关键。
面试三连:什么是死锁?怎么排查死锁?怎么避免死锁?
这次,我们就来系统地聊聊死锁的问题。 死锁的概念; 模拟死锁问题的产生; 利用工具排查死锁问题; 避免死锁问题的发生;
JMM 工作内存 主内存 理解
这个问题,本质上是对应于实际上CPU和内存的关系模型。尤其是多核心的CPU和内存的关系。 首先,CPU是无法直接对内存中的数据进行计算的,CPU的计算是这样的: CPU把内存中的数据加载到寄存器中;