首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
德玛杰
掘友等级
java后端开发
www.dema666.top
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
19
文章 18
沸点 1
赞
19
返回
|
搜索文章
赞
文章( 18 )
沸点( 1 )
java8 Stream 流快速入门
Java 8 中,得益于 lambda 带来的函数式编程,引入了一个全新的 Stream流 概念,用于解决集合已有的弊端。 筛选出 names 中以 '张' 开头的字符串得到子集1,再筛选出 子集1 中长度为 3 的字符串,然后遍历输出。 可以看到用 stream 流方式比传统…
并发编程第十天----HashMap 与 ConcurrentHashMap 源码解析
。 hash 表综合了他们的优点,采用键值对形式存储,能根据键快速地取到相应的值,底层结构(JDK 1.8后)是数组+链表+红黑树。 本文分析的源码基于 JDK 1.8 ,数据存储在 Node 节点中。 tableSizeFor() 通过位移算法,返回大于等于给定目标数值的最小…
并发编程——ConcurrentHashMap#transfer() 扩容逐行分析
ConcurrentHashMap 是并发中的重中之重,也是最常用的数据结果,之前的文章中,我们介绍了 putVal 方法。并发编程之 ConcurrentHashMap(JDK 1.8) putVal 源码分析。其中分析了 initTable 方法和 putVal 方法,但也…
并发编程第九天---公平、非公平、读写锁源码
ReentrantLock 是可重入的独占锁,是用 AQS 来实现的,以下是其类图结构。 ReentrantLock 有两种锁模式,公平模式和非公平模式,我们先来看看非公平是如何体现的。 先尝试获取锁的线程并不一定比后尝试获取锁的线程优先获得锁,比如:线程 A 尝试获取锁,然后…
100道MySQL数据库经典面试题解析(收藏版)
1. MySQL 索引使用有哪些注意事项呢? like通配符可能导致索引失效。 联合索引,查询时的条件列不是联合索引中的第一个列,索引失效。 在索引列上使用mysql的内置函数,索引失效。 对索引列运算(如,+、-、*、/),索引失效。 索引字段上使用(!= 或者 < >,no…
打通 Java 任督二脉 —— 并发数据结构的基石
Java 的线程阻塞和唤醒是通过 Unsafe 类的 park 和 unpark 方法做到的。 这两个方法都是 native 方法,它们本身是由 C 语言来实现的核心功能。park 的意思是停车,让当前运行的线程 Thread.currentThread() 休眠,unpark…
并发编程第八天--------大厂必问之 AQS 源码解析
LockSupport 是个工具类,主要作用是挂起和唤醒线程,该工具类是创建锁和其他同步类的基础。 LockSupport 类与每个使用他的线程都会关联一个许可证,在默认情况下调用 LockSupport 类方法的线程是不持有许可证的。LockSupport 使用 Unsafe…
CAS底层实现
初入染缸,不知深浅,记少年长成。 本文摘要: “CAS底层实现”、“cmpxchg指令”、“ ‘Intel汇编’ 与 ‘AT&T汇编’ 的区别”。 若有偏颇之处,欢迎指正。同时,若文章侵犯了你的权益,请及时与我联系:bycqgEmail@163.com。 在学习Jav…
并发编程第七天----CopyOnWriteArrayList 实现原理
ArrayList 相信大家都用过,我们来看看它在并发下的缺陷。 在遍历集合的过程中,如果对集合做了修改,会抛出 ConcurrentModificationException 异常,在 Java 中,for 循环遍历集合会转换成 Iterator 遍历,我们来看看迭代器遍历时…
我的第一本书《深入理解 JVM 字节码》出版啦
历时将近一年,我的第一本书《深入理解 JVM 字节码》终于出版了。 这本书的思路来源是掘金的小册子《JVM 字节码从入门到精通》,这本小册是我的第一个技术专栏,也是抱着为自己总结的心态把自己在 JVM 字节码的知识沉淀一下。在掘金上线后,虽然销量一般,但是我收获了很多的意见,看…
下一页
个人成就
文章被点赞
98
文章被阅读
14,327
掘力值
525
关注了
8
关注者
48
收藏集
0
关注标签
3
加入于
2020-05-23