首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
wu9007
掘友等级
QI'ao
Albert Einstein: Logic will get you from A to B. Imagination will take you everywhere.
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
82
文章 76
沸点 6
赞
82
返回
|
搜索文章
最新
热门
让产品“会说话”:以用户为中心的设计思考
技术不应成为负担。设计的真正价值,是让技术变得温柔可感,帮助人们更高效、更安心地完成每一项任务。 一个“会说话”的产品,不仅好用,更让人产生信任感。
AQS中的同步队列与等待队列
当使用Condition的时候,等待队列的概念就出来了。Condition的获取一般都要与一个锁Lock相关,一个锁上面可以生产多个Condition。 Condition接口的主要实现类是AQS的内部类ConditionObject,每个Condition对象都包含一个等待队…
深入分析AQS实现原理
简单解释一下J.U.C,是JDK中提供的并发工具包,> java.util.concurrent。里面提供了很多并发编程中很常用的实用工具类,比如atomic原子操作、比如lock同步锁、fork/join等。 我想以lock作为切入点来讲解AQS,毕竟同步锁是解决线程安全问题…
多线程三大核心
Java 的原子性就和数据库事务的原子性差不多,一个操作中要么全部执行成功或者失败。 获取 i 的值。 自增。 再赋值给 i。 这三步操作,所以想要实现 i++ 这样的原子操作就需要用到 synchronized 或者是 lock 进行加锁处理。 如果是基础类的自增操作可以使用…
CPU三级缓存
众所周知, CPU是计算机的大脑, 它负责执行程序的指令; 内存负责存数据, 包括程序自身数据. 同样大家都知道, 内存比CPU慢很多. 其实在30年前, CPU的频率和内存总线的频率在同一个级别, 访问内存只比访问CPU寄存器慢一点儿. 由于内存的发展都到技术及成本的限制, …
Synchronized关键字和锁升级,详细分析偏向锁和轻量级锁的升级
Synchronized是一个同步关键字,在某些多线程场景下,如果不进行同步会导致数据不安全,而Synchronized关键字就是用于代码同步。什么情况下会数据不安全呢,要满足两个条件:一是数据共享(临界资源),二是多线程同时访问并改变该数据。 但是如果increase的syn…
设计模式——中介者模式
定义了一个中介对象来封装一系列对象之间的交互关系。中介者使各个对象之间不需要显式地相互引用,从而使耦合性降低,而且可以独立地改变它们之间的交互行为。 中介模式.png 在我的日常工作中,项目经理(老祁)就是一个称职的黑中介。 销售经理(老王)中标了就屁颠屁颠的跑到老祁面前说: …
Java自定义类加载器
加密:如果你不想自己的代码被反编译的话。(类加密后就不能再用ClassLoader进行加载了,这时需要自定义一个类加载器先对类进行解密,再加载)。 从非标准的来源加载代码:如果你的字节码存放在数据库甚至是云端,就需要自定义类加载器,从指定来源加载类。 我们先看一下ClassLo…
JVM类加载过程
(1) 数组类没有对应的字节流,它是由JVM根据元素类型和维度,创建的。 (2) 除了数组类,其他类都是JVM借助BootStrap ClassLoader、ClassLoader、ExtClassLoader、AppClassloader等类加载器来查找字节流并创建的。 (3…
Java类加载源码阅读
启动类加载器 BootStrap ClassLoader:最顶层的类加载器,负责加载 JAVA_HOME\lib 目录中的,或通过-Xbootclasspath参数指定路径中的,且被虚拟机认可(按文件名识别,如rt.jar)的类。可以通System.getProperty("s…
下一页
个人成就
文章被点赞
174
文章被阅读
51,492
掘力值
1,054
关注了
21
关注者
15
收藏集
1
关注标签
19
加入于
2017-12-03