首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
写代码哪有不疯的
掘友等级
java 开发
拒绝只做 CRUD !
获得徽章 8
动态
文章
专栏
沸点
收藏集
关注
作品
赞
58
文章 52
沸点 6
赞
58
返回
|
搜索文章
最新
热门
【并发编程】 深入理解ReentrantLock
1. ReentrantLock ReentrantLock是一种基于AQS框架的应用实现,是JDK中的一种线程并发访问的同步手段,它的功能类似于synchronized,是一种可重入互斥锁。相比于 synchronized 自动加锁和解锁,ReentrantLock 提供了更…
【并发编程】深入理解 synchronized
1. synchronized 简介 通过volatile修饰 num (屏蔽可见性问题)后,如果计算正常的话,应该是 20000 ,但是多次运行结果都不是 20000,且每次的结果都不一致。 既然在多线程情况下会出现数据安全性问题,那么存在数据安全问题的共享资源 每次只允许一…
【并发编程】JAVA 内存模型 与 volatile 关键字
我们都知道 JVM 在运行时,将我们的变量和相关方法都保存在我们的内存中,CPU运行时必然需要将数据复制到寄存器中运行。那么cpu时如何获取数据的呢? cpu 先查询一级缓存是否存在 int a,如果没有,再查询二级缓存,然后查询三级缓存,如果缓存中均不存在,才会通过 BUS总…
【MySQL】从索引数据结构 看 SQL优化
当执行sql SELECT * FROM org_user where id = 7; 时,会进行 全表扫描。 mysql 会逐条取数据,然后根据 where 后面的条件进行比对。最终取出符合条件的数据。 每次取出数据都会进行一次 I/O 操作,取出几次,就进行几次I/O。当数…
【MySQL】删库跑路?了解下bin-log!
操作生产数据库时每一个操作都需要反复审核。任意的小错误,都会导致线上“大灾难”! “从删库到跑路”,可以说是IT业内老梗了。 其实也没这么夸张,真实的生产数据库往往“热备”和“冷备”同时进行。万一出现删库的情况,还是可以通过备份文件进行恢复。这里提到的备份文件可以是数据库某一时…
【JVM调优】调优命令/线上调优分析
上个月有个新项目上线了,中间好像也没什么告警报错。 今天上生产环境查看运行情况时发现,该应用已经进行了近250次 Full GC 了。平均3个小时发生一次!emmm.... 好在还没人投诉。 通过 JSTAT -GC 命令发现在每日高峰期,平均每分钟产生 20M 的对象,会在2…
垃圾回收算法和常见的垃圾回收器(CMS+G1)
现在市面上常见的垃圾回收器都采用了分代收集理论。 所谓分代收集就是根据对象的存活周期将内存分为新生代和老年代。详细可查看JAVA内存模型 在新生代对象“朝生夕死”,每次收集都有大量对象(99%)死去,所以可以选择标记-复制算法,只需要付出少量对象的复制成本就可以完成每次垃圾收集…
JVM对象创建和内存分配机制
在类加载完成时,类对象所需的内存大小就已经确认下来,所以虚拟机只需要在java堆中划分一块固定大小的区域来保存对象。 指针碰撞:在内存空间中维护一个指针,每次指针向后移动一段与对象大小一致的距离。这种方法保证内存空间时规整的,已经使用的在指针前面,未使用的在指针后面。 空闲列表…
JVM内存模型与垃圾回收机制
栈:线程运行时创建,主要用于存放局部变量。 本地方法区:程序运行时,存在 通过本地方法(native) 与 底层C交互时,会创建一个本地方法栈。 程序计数器:记录代码运行的位置/行号。 1、动态链接:代码中的#XX,会在程序运行时被替换成指向堆中实际地址。 垃圾回收区域分为新生…
JVM 指令集指南
栈和局部变量操作将常量压入栈的指令aconst_null将null对象引用压入栈iconst_m1将int类型常量-1压入栈iconst_0将int类型常量0压入栈iconst_1将int类型常量1压
下一页
个人成就
文章被点赞
149
文章被阅读
31,442
掘力值
1,337
关注了
4
关注者
28
收藏集
1
关注标签
18
加入于
2020-10-21