首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
麻辣小龙侠同志
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
最新
热门
ArrayBlockingQueue
ArrayBlockingQueue:定常的阻塞队列,当多个线程对队列进行操作的时候可以满足线程安全,主要是通过ReentrantLock(同步队列)、Condition(条件阻塞队列来实现)。1、构
MySql语句优化
-- 因为根据name字段过滤后,得到的age跟position是无序的,所以无法使用索引。 -- 在比较 age 跟 position这两个字段的值是否符合。 -- 不符合条件的记录之后再回表,可以减少回表次数。使用了索引下推以后,根据name匹配完以后会根据age -- 跟…
五、G1垃圾收集器
G1垃圾收集器,是一款面向服务器的垃圾收集器。主要针对多颗处理器以及大容量内存的机器。可以满足低停顿时间的同时具备高吞吐量。 G1将内存区域划分成多个大小相等独立的region,JVM最多有2048个Region。一般Region大小等于堆的大小 / Region 个数。如果堆…
四、垃圾收集算法、收集器
分代垃圾收集理论:根据对象的存活时间将内存划分为不同的块,一般将java堆分成新生代和老年代,不同的分代使用不同的垃圾收集算法。年轻代:每次收集都会有大量的对象死去,对象朝生夕死,所以可以选择标记复制算法,每次付出少量的复制成本就可以完成年轻代的垃圾收集。老年代的对象存活几率比…
三、对象内存分配
在使用到new关键字以后,首先检查这个指令的参数是否可以在常量池中可以找到相应的符号引用,如果没有找到或者常量池中的符号引用对应的类没有进行加载,首先对类进行加载。 指针碰撞(默认为指针碰撞):如果Java内存是规整的,所有用过的内存存放在一边,空闲内存存放在一边中间放着一个指…
二、Java虚拟机内存模型
不同的操作系统有不同的JDK版本,不同的JDK版本都对JVM进行了实现,JVM对JAVA程序进行内存的动态分配。 栈:线程私有,生命周期与线程的生命周期相同。虚拟机栈描述的是Java方法的执行模型,一个方法的调用就对应着一个栈帧出栈入栈的过程。在活动的线程中位于栈顶的栈帧才是有…
一、JVM类加载解析
在构造方法中会创建扩展类加载器、应用类加载器这两个类都是Launcher中定义的两个内部类。 加载:通过类的全限定名获得类对应的二进制字节流,将该字节流所代表的类加载到方法区,并在堆上生成一个代表该类的Object.lang.Class对象,作为访问方法区的入口。JVM对于的加…
工厂方法模式
工厂方法模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使得一个类的实例化延迟到子类。 简单工厂模式,又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,把产品的生产方法封装起来放进工…
单例模式
指令重排序问题,通过 volatile 解决指令重排序的问题。 类加载的初始化阶段就完成了实例的初始化,本质上就是借助jvm类加载机制,保证实例的唯一性以及线程安全。所以饿汉模式的优点是调用效率比较高,但是在类加载时需要创建类的实例,所以效率会比较低。 1、本质上是利用类的加载…
个人成就
文章被阅读
3,206
掘力值
117
关注了
2
关注者
0
收藏集
0
关注标签
6
加入于
2020-06-09