首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java
MxsQ
创建于2021-09-04
订阅专栏
Java知识集哦
等 1 人订阅
共10篇文章
创建于2021-09-04
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
见识不一样的ConcurrentHashMap
为什么有这篇文章 最近在看ConcurrentHashMap,也参考了一些有关的文章,大多浅尝辄止,没有解答在阅读过程中产生的疑惑。 总体来说,许多人对于ConcurrentHashMap的印象,停留
我所理解的Java锁
为什么需要锁当并发地访问共享资源,如果不加以管理,其结果是混乱的。就如上图,双方均想改变方块的颜色,但在任意时刻,我们并不能确定方块接下来是什么颜色,因为我们无法确定谁的时间片最终改变了方块的颜色。显
一文学会Semaphore(信号量)
什么是SemaphoreSemaphore也叫信号量,信号的含义是指,通过约定好的某种途径,用来指挥行动或进行指示。对应于Semaphore针对的使用场景,是如何并发地占用有限的公共资源。...
一文学会ReentrantReadWriteLock(读写锁)
如果需要并发地访问竞争资源,你会怎么做?答案大家都知道,对临界区上锁,即对将要访问到竞争资源的代码进行所控制。进一步的,如果访问更多的是读操作,而更多的写操作,那你又会怎么做?...
一文学会ReentranLock(重入锁)
ReentrantLoock也称为可重入锁。可重入意味着已持有锁的线程,可以重复地获取锁,表现为,如果锁不支持重入,那么当持有锁的线程再次上锁时将会被阻塞住。如当在递归的方法里获取锁时,递归将因申请锁而被阻塞住。 锁的知识分两部分,一分部为如何加解锁,另一部分为把锁分配给谁。R…
一文了解AQS(AbstractQueuedSynchronizer)
并发使计算机得以充分利用计算能力,有效率地完成各类程序任务。当深入地学习Java中的并发,不可避免地将学习到锁 —— 使并发的资源能被正确访问的手段。锁的学习也将分为两部分,一部分是如何加解锁,另一部分是把锁分配给谁。 AQS(AbstractQueuedSynchronize…
Serializable是怎么一回事
在Java中,Serializable作为一种序列化手段最为方便不过,其使用成本之低,使在完全不了解它原理的情况下,均可正常使用。 需要序列化的场景很多,当涉及如果将数据从一个地方,有效地传输到另一个地方,就可涉及到序列化的使用。侧重于目标不同,实现的序列化方式也就不同,Ser…
你了解线程池吗
如果有人问我:“你了解Java线程池吗”,我不打算回答Java中常用的几种线程池,也记不住。从线程池的上层API来看,再多种的线程池,无非是参数的不同,让它们呈现出了不同的特性,那么这些特性到底依赖什么样的原理实现,就更值得去深究,也是本文的目的。 如果以上问题回答不出一二三,…
JVM 方法到底如何执行
与上图类似的JVM内存模型图见过多次,仅从概念上去理解各个区域的作用,难有深刻印象。 当学习一个类如何存储,即JVM如何解析.Class文件,能知道方法区存在的意义。本文的目的则是学习JVM如何执行一个方法,如此对栈与程序计数器有更深刻的认识。 Java代码通过编译后,会将对应…
JVM 眼中的 Class 文件
Java程序具有 " Write Once , Run Anywhere ." 的跨平台特性。实现这样的目的,Java的方案是:半编译 + 半解释,即 .Class + JVM 。 2、理解了程序内容,各个平台根据自身特色不同,实现各自的JVM用来解释(翻译).Class文件,…