自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 HashMap源码

HashMap源码阅读记录先说说1.7在1.8的优化讲一下put方法,插入的流程扩容的过程 resize先说说1.71.7的时候主要存在几个问题key的hash值计算方式很复杂在扩容的时候,因为使用的是尾插法,所以在多线程对这个变量进行操作的时候会产生一个环,导致死循环最大的问题就是hash冲突问题,当一个桶里元素过多的时候,就相当于一个很长的链表,查询的时候需要从头到尾遍历一遍,时间复杂度是O(n)。在1.8的优化hash计算方式,是通过key的hashcode的高16位与hashco

2021-05-07 23:11:41 85

原创 底层知识2

底层知识二(进程管理及内存管理)进程管理进程 线程 纤程的区别进程调度中断内存管理LRU算法介绍进程管理进程 线程 纤程的区别进程是OS分配资源的基本单位。线程是执行调度的基本单位。是一个进程中的不同执行路径两个最大的区别是:线程共享进程的内存空间,没有自己的独立空间。线程(fiber):可以理解称为线程中的线程。 是内核态的线程为什么会有纤程呢?在java中JVM线程的实现方式是:经过一系列的系统调用,向OS申请,然后操作系统会产生对应的线程(这种线程叫做重量级线程),这个线程会在用户态和

2021-03-18 20:35:31 85

原创 一些底层知识

程序员应该会的底层知识微机原理计算器启动的过程相关的硬件知识cpu缓存缓存一致性缓存行对齐cpu的底层知识cpu的乱序执行微机原理汇编语言:它的本质是机器语言的助记符机器语言:010101 对应的汇编语言可能就是:mov计算器启动的过程首先计算机通电,这个时候cpu就会去读取内存的程序,它是通过电信号输入来实现的,cpu四周有无数的桢脚,时钟发生器不断震动通断电,cpu周围的桢脚就将其识别为1 0 信号,然后转换成对应的机器码。通过这样来推动cpu一步一步执行,cpu执行完就是计算完成,这时候会写

2021-03-17 23:19:09 179

原创 多线程与并发基础

多线程与并发基础普通方法调用多线程三种创建方式继承thread类实现Runnable 接口实现Callable接口如何选择?初识并发问题静态代理模式多线程中的lambda表达式线程的状态停止线程sleep和wait的区别sleep()wait()yield()守护线程线程同步(重点和难点)死锁Lock锁线程的通信线程池普通方法调用普通的方法调用是顺序执行的,只有主线程一条执行路径多线程多线程是多条执行路径,主线程与子线程并行交替执行。三种创建方式继承thread类三个步骤自定义线程类继承实

2021-01-08 16:21:33 125

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除