自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (3)
  • 收藏
  • 关注

原创 MySQL索引数据结构理解

左边叶子节点小于根节点,右边叶子节点大于根节点。

2025-05-06 21:11:53 771

原创 JVM调优

JPS查询JAVA进程Jmap -heap pid 查看堆内存信息jstack PID 查看死锁信息JVisual Vm线程dump也可以查看死锁信息jinfo -flags pid 查看配置启动参数jinfo -sysprops pid查看系统参数s0c: s0区域大小(Kb) s1c: s1区域大小(Kb)s0u: s0区域使用情况 s1u: s1区域使用情况。

2025-04-28 11:34:55 723

原创 JVM基础理解

loadClass类加载过程加载->验证->准备->解析->初始化->使用->卸载加载:从硬盘查找,通过IO读取字节码文件,使用到类时加载。验证: 验证字节码文件安全性。准备: 给类常量变量分配内存,并赋予默认值。解析: 将符号引用替换为直接引用初始化: 给类的静态变量初始化指定值,执行静态代码块。

2025-04-27 17:54:12 813

原创 JAVA并发三大特性及JMM模型理解

并发编程Bug根源:原子性、可见性、有序性。

2025-04-15 20:34:10 921

原创 JAVA并发编程-线程池理解

我们知道在线程池创建过程中2个重要参数corePoolSize:核心线程数maximumPoolSize:最大线程数通常我们怎么设置呢?将任务分为CPU密集型、IO密集型、及混合型。CPU密集型:CPU核心数+1为什么要+1,在多线程中,如果当前线程中断,CPU就会让出当前线程调度其他线程,这里+1就是充分利用CPU资源IO密集型:2*CPU核心数通用公式: CPU 核心数 * (1 + 线程等待时间 / 线程运行总时间)

2025-04-13 18:11:22 915

原创 JAVA并发编程之ReentrantLock源码理解

公平锁和非公平锁如何实现锁竞争,入队操作环形锁,出队操作。

2025-04-11 11:42:20 255

原创 MESA模型及AQS

同步等待队列:主要用于维护获取锁失败时入队的线程。条件等待队列:调用await()的时候会释放锁,然后线程会加入到条件队列,调用signal()唤醒的时候会把条件队列中的线程节点移动到同步队列中,等待再次获得锁。AQS 定义了5个队列中节点状态:值为0,初始化状态,表示当前节点在sync队列中,等待着获取锁。CANCELLED,值为1,表示当前的线程被取消;SIGNAL,值为-1,表示当前节点的后继节点包含的线程需要运行,也就是unpark;

2025-04-10 20:55:33 271

原创 JAVA并发编程-JUC并发工具类

提高性能+线程安全。

2025-04-10 20:26:06 793

原创 JAVA并发编程-CAS设计及Atomic原子操作

CAS(Compare And Swap,比较并交换)是一种重要的并发控制机制,广泛应用于多线程编程中实现无锁(lock-free)算法。CAS是一种原子操作,包含三个操作数:主内存中存放的共享变量的值:V(一般情况下这个V是内存的地址值,通过这个地址可以获得内存中的值)。工作内存中共享变量的副本值,也叫预期值:A。需要将共享变量更新到的最新值:B。操作逻辑:1、读取旧值:线程读取内存位置 V 的当前值 A。2、比较旧值:将读取的值 A 与预期的旧值进行比较。

2025-04-10 17:52:55 451

原创 Java并发编程基础

进程是操作系统进行资源分配和调度的基本单位,是程序的一次执行实例。这里主要理解为对内存进行分配的基本单位,主要为内存,其余少量网络IO等。

2025-04-10 15:52:28 718

原创 基于SpringBoot的网上书店推荐系统(KMeans算法、Apriori关联协同过滤、Mahout算法)

网上书店 算法智能推荐图书

2023-04-11 21:09:20 641 11

原创 BeanUtils.copyProperties()方法的用法及效率

1.BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们在项目中经常使用到的PO对象和VO对象在很多情况下属性是相同的,通过BeanUtils.copyProperties()方法可以减少程序员再次get/set方法的书写,BeanUtils.copyProperties()方法也有它的优缺点,下面我们通过程序来验证。2.首先我

2016-10-29 16:32:32 11798 1

centos 安装chrome浏览器资源

centos 安装chrome浏览器资源

2023-06-10

mysql 大表增加字段工具

mysql 大表增加字段工具

2023-04-11

linux 搭建vsftp包

linux 服务器搭建 vsftp服务包

2023-04-10

瓦片地图下载器

瓦片地图工具下载,包含了4种多样化下载工具,实现特色瓦片下载

2019-04-25

高仿win10桌面版ui

高仿win10桌面版ui,可视化强,简易入门,方便直接使用

2019-04-25

百度地图离线版瓦片下载

离线版百度地图瓦片的下载,可设置多风格的瓦片格式下载。

2019-04-25

空空如也

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

TA关注的人

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