摘要: 问题:现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行 实现:使用Thread中的join方法实现 分析: Thread类中的join方法是用来同步的,底层其实是调用了 wait方法。先来看一下演示代码: package com.whh.concurrency 阅读全文
posted @ 2020-10-26 11:47 面壁者逻辑 阅读(548) 评论(0) 推荐(0)
摘要: MySQL存储引擎 一、 数据库存储引擎 ​ 数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据操作。 MySQL提供了多个不同个的存储引擎,包括处理 事务安全表 的引擎 和 处理 非事务安全表 的引擎。MySQL中,不需要在整个服务器使用同一种 阅读全文
posted @ 2020-10-16 09:52 面壁者逻辑 阅读(294) 评论(0) 推荐(0)
摘要: MySQL索引底层数据结构 索引是存储引擎快速找到记录的一种数据结构 一、 有索引与没索引的差距 先来看一张图: 左边是没有索引的情况,右边是作为col2字段 二叉树索引的情况。 假如执行查找(假设表为 t) select *from t where col2 = 89; 那么,左边的情况,需要比较 阅读全文
posted @ 2020-10-12 11:00 面壁者逻辑 阅读(1775) 评论(0) 推荐(0)
摘要: MySQL索引 一、 索引简介 1.1 索引含义 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可提高数据库中特定数据的查询速度。 索引的含义:是一个单独的、存储在磁盘 上的数据结构,它们包含着对数据表里所有记录的引用指针。 所有MySQL列类型都可以被索引。 1.2 索引和引擎 索引 阅读全文
posted @ 2020-10-12 10:54 面壁者逻辑 阅读(134) 评论(0) 推荐(0)
摘要: MySQL事务相关 一、 什么是事务 **事务(Transaction)**是一个逻辑序列,该序列要么执行,要么不执行。 例如:转换业务 A 给 B 转账 1000 元,设计两个操作: A减少1000元 B增加1000元 如果在这两个操作中间,发现了意料不到的事件,如断电,系统崩溃等。这样转账并没有 阅读全文
posted @ 2020-10-12 10:11 面壁者逻辑 阅读(260) 评论(0) 推荐(0)
摘要: mysql各种连接查询 一、 建表 数据库表: a_table, b_table 连接包括:内连接、左连接(左外连接)、右连接(右外连接)、全连接(全外连接)、左表独有、右表独有 建表语句: CREATE TABLE `a_table` ( `a_id` int(11) DEFAULT NULL, 阅读全文
posted @ 2020-10-12 10:07 面壁者逻辑 阅读(531) 评论(0) 推荐(0)
摘要: 三、LinkedList 源码分析 版本 : JDK 1.8 一、 概述 LinkedList是一种可以在任何位置进行高效地插入和移除操作的有序序列,它是基于双向链表实现的,是线程 不安全的,允许元素为null的双向链表。 底层数据结构:双向链表 插入删除比较快:O(1),查询相对较慢 O(n) 链 阅读全文
posted @ 2020-10-10 15:37 面壁者逻辑 阅读(172) 评论(0) 推荐(0)
摘要: 二、 ArrayList源码分析 一、 简介 ArrayList 是常用的存储容器之一, 其底层是用数组实现,可以存储任意类型的数据 ArrayList是线程不安全的。 非常适用与对元素的查找,效率非常高。 二、 线程安全性 对ArrayList的操作一般分为两个步骤,改变位置(size)和操作元素 阅读全文
posted @ 2020-10-10 15:33 面壁者逻辑 阅读(137) 评论(0) 推荐(0)
摘要: java集合概述 版本: JDK 1.8 一、 java 集合思维导图 二、 数组与集合的区别 1. 长度区别 数组长度固定 集合长度可变 2. 内容不容 数组存储的是同一种类型的元素 集合可以存储不同类型的元素(一般不这么做) 3. 元素的数据类型 数组可以存储基本数据类型,也可以存储引用数据类型 阅读全文
posted @ 2020-10-10 15:30 面壁者逻辑 阅读(129) 评论(0) 推荐(0)
摘要: 5.重排序、 happens-before 一、指令重排 指令重排序: java语言规范规定JVM线程内部维持顺序化语义。即只要程序的最终结果与它顺序化情况的结果相等,那么指令的执行顺序可以与代码顺序不一致,此过程叫指令的重排序。 三种指令重排序: 编译器优化的重排序:编译器在不改变单线程程序语义的 阅读全文
posted @ 2020-10-10 13:47 面壁者逻辑 阅读(208) 评论(0) 推荐(0)