- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 分析docker启动MySQL挂载目录提示权限不足Permission denied原因
分析docker启动MySQL挂载目录提示权限不足Permission denied原因
2022-10-10 10:59:50
13330
1
原创 《Java并发编程的艺术》学习之路-- $6 Java并发容器和框架
《Java并发编程的艺术》 学习之路第六章 Java并发容器和框架6.1 ConcurrentHashMap的实现原理与使用6.1.1 为什么要使用ConcurrentHashMap原因:并发编程中使用HashMap可能导致程序 死循环 ,而使用线程安全的HashTable 效率低下。(1) 线程不安全的HashMap示例: final HashMap<String, String> map = new HashMap<String, String>(2);
2021-10-24 11:22:35
180
原创 Java基础类型拆装箱源码解析
Java基础类型拆装箱源码解析JDK1.5开始 增加了自动拆装箱机制,阅读源码发现实现很简单基础类型总结:基础类型包装类型字节默认缓存范围booleanBooleanbyteByte1[-128,127]charCharacter2[0,127]shortShort2[-128,127]intInteger4[-128,127]longLong8[-128,127]floatFloat4-dou
2020-05-26 11:35:40
272
原创 《Java并发编程的艺术》学习之路-- $5 Java中的锁
《Java并发编程的艺术》 学习之路第五章 Java中的锁5.1 Lock接口锁 是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源(但是有些锁可以允许多个线程并发的访问共享资源,比如读写锁)。Tip: 不要将获取锁的过程写在try块中,因为如果在获取锁(自定义锁的实现)时发生了异常,异常抛出的同时,也会导致锁无故释放。Lock锁和synchro...
2019-12-25 10:28:06
160
原创 《Java并发编程的艺术》学习之路-- $4 Java并发编程基础
《Java并发编程的艺术》 学习之路第四章 Java并发编程基础4.1 线程简介4.1.1 什么是线程操作系统调度的最小单元是线程,也叫轻量级进程(LightWeight Process),在一个进程里可以创建多个线程,这些线程都拥有各自的计数器、堆栈和局部变量等属性,并且能够访问共享的内存变量。4.1.2 为什么要使用多线程(1)更多的处理器核心(2)更快的响应时间(3)更好...
2019-11-27 17:54:37
148
原创 《Java并发编程的艺术》学习之路-- $3 Java内存模型
《Java并发编程的艺术》 学习之路第三章 Java内存模型3.1 Java内存模型的基础3.1.1 并发编程模型的两个关键问题线程通信:共享内存和消息传递共享内存:线程之间共享程序的公共状态,通过读写公共状态隐式通信。消息传递:线程之间必须通过发送消息来显式进行通信。线程同步:指程序中用于控制不同线程间操作发生相对顺序的机制共享内存:同步是显式进行的需要显式指定某个方法或某段代码...
2019-11-19 15:59:41
188
原创 《Java并发编程的艺术》学习之路-- $2 Java并发机制的底层实现原理
《Java并发编程的艺术》 学习之路第二章 Java并发机制的底层实现原理2.1 volatile的应用在多线程并发编程中synchronized和volatile都扮演着重要的角色,volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性:当一个线程修改一个共享变量 时,另外一个线程能读到这个修改的值。如果volatile变量修饰符使用...
2019-11-01 16:59:12
227
原创 《Java并发编程的艺术》学习之路-- $1 并发编程的挑战
《Java并发编程的艺术》 学习之路记录阅读学习《Java并发编程的艺术》一书的历程,好记性不如烂笔头,边看边思考边记录有助于理解,由于精力有限,整理内容有节选,旨在首次快速通读,记录其中重要的知识点,便于以后复习或精读使用。第一章 并发编程的挑战1.1 上下文切换多线程执行代码,需要cpu通过为每个线程分配 cpu时间片 来实现。上下文切换: 当前任务执行完一个时间片后会切换到下一...
2019-10-29 18:13:58
251
SVM推导过程.pptx
2020-05-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人