自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (2)
  • 收藏
  • 关注

原创 MySQL索引那些事儿

1.B+树一个节点有多个元素 所有元素都在叶子节点冗余 叶子节点间有指针且有序推荐一个B+树演示网站https://www.cs.usfca.edu/~galles/visualization/BPlusTree.html2.InnoDB数据引擎中的页默认页大小为16kbmysql> show global status like 'Innodb_page_size';+------------------+-------+| Variable_name | Val.

2020-05-24 08:40:24 348

原创 记录Java有意思的代码 持续更新~

1.局部变量对象引用public static void main(String[] args) { List<String> list1 = new ArrayList(); list1.add("a"); list1.add("b"); list1.add("c"); List<String> list2 = new ArrayList(); list2.add("x"); list2.add("y"); li

2020-05-21 20:37:18 160

原创 线程安全之原子操作 待续~

原子操作,可以是一个步骤,也可以是多个操作步骤,但是其顺序不可以被打乱,也不可以被切割而只执行其中一部分(不可中断性),将整个操作视为一个整体,资源在该次操作中保持一致,这是原子性的核心特征。CAS机制compare and swap,属于硬件同步原语,处理器提供了基本内存操作的原子性保证。CAS操作,需要输入两个数值,一个旧值一个新值,在操作期间先比较下旧值有没有发生变化,如果没有发生变化,才交换成新值;如果发生了变化,则不交换。使用Java中Unsafe类实现CAS机制:impor

2020-05-19 08:01:03 127

原创 获取线程信息

// 获取 Java 线程管理 MXBeanThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();// 不需要获取同步的 monitor 和 synchronizer 信息,仅获取线程和线程堆栈信息ThreadInfo[] threadInfos = threadMXBean.dumpAllThreads(false, false);// 遍历线程信息,仅打印线程 ID 和线程名称信息for (ThreadInfo thr.

2020-05-19 07:31:19 390

原创 线程安全之可见性问题

1、线程安全概念临界区:无法被多个线程同时访问的公共资源。 竞态条件:可能发生在临界区内的特殊条件。 共享资源:被多个线程读取或修改的资源。 线程安全: 如果一段代码是线程安全的,则不包含竞态条件。 只有当多个线程更新共享资源时,才会发生竞态条件。 栈封闭时,不会在线程间共享的变量,都是线程安全的。 局部变量引用本身不共享,但是引用的对象存储在共享堆中。 如果方法内创建的对象,只是在方法中传递,并且不对其他线程可用,也是线程安全的。 判定规则:如果创建、使用和处理资源,永远不

2020-05-16 12:47:08 359

原创 线程封闭之ThreadLocal

多线程访问共享可变数据时,涉及到线程间数据同步问题。数据都被封闭在各自的线程之中,就不需要同步,这种通过将数据封闭在线程中,而避免使同步的技术,称为线程封闭。ThreadLocal线程级别变量 每个线程都有一个ThreadLocal 每个线程都拥有了自己独立的一个变量 竞争条件被彻底消除了 在并发模式下是绝对安全的变量1.示例import java.text.SimpleDateFormat;import java.util.Random;import java.util.c

2020-05-16 01:03:35 154

转载 MySQL高性能优化规范建议,速度收藏——从JavaGuide大神那里转载

作者: 听风,原文地址:https://www.cnblogs.com/huchong/p/10219318.html。JavaGuide 已获得作者授权。数据库命令规范所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用 MySQL 保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 数据库对象的命名要能做到见名识意,并且最后不要超过 32 个字符 临时库表必须以 tmp_为前缀并以日期为后缀,备份表必须以 bak_为前缀并以日期 (时间戳) 为..

2020-05-15 21:55:35 217

原创 Java线程池那些事儿

阿里巴巴Java手册中,关于线程池:线程资源必须通过线程池提供,不允许在应用中自行显示创建线程。 使用线程池的好处,是减少在创建和销毁线程上所花的时间以及系统资源的开销,解决资源不足的问题。 如果不使用线程池,有可能造成系统创建大量同类线程而导致消耗完内存或者“过度切换”的问题。线程池的好处:可以重用线程,避免线程创建的开销; 任务过多时,通过排队避免创建过多线程,减少系统资源消耗和竞争,确保任务有序完成。Java JUC包中的实现类是ThreadPoolExecutor,继承Abstra

2020-05-10 13:02:28 355

spark-1.6.3.zip

spark-1.6.3源码,学习spark1.x必备源码,从github上下载超级慢。

2019-02-20

exe4j安装包

将jar包封装成exe可执行文件,安装后即可使用,使用教程详见

2018-09-26

空空如也

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

TA关注的人

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