摘要:
SQL 数据定义语言(Data Definition Language,DDL) 用来创建或删除数据库以及表等对象,主要包含以下几种命令: DROP:删除数据库和表等对象 CREATE:创建数据库和表等对象 ALTER:修改数据库和表等对象的结构 数据操作语言(Data Manipulation L 阅读全文
摘要:
Mybatis面试题 相关文档: https://mybatis.org/mybatis-3/zh/configuration.html bearbrick0/mybatis: mybatis源码中文注释 (github.com) dynamic-sql.xml — mybatis/mybatis- 阅读全文
摘要:
并发编程进阶 再谈线程池 线程池 怎么去创建多线程 - BeaBrick0 - 博客园 (cnblogs.com) 在我们的程序中,多多少少都会用到多线程技术,而我们以往都是使用Thread类来创建一个新的线程: public static void main(String[] args) { Th 阅读全文
摘要:
多线程的核心 在前面,我们了解了多线程的底层运作机制,我们终于知道,原来多线程环境下存在着如此之多的问题。在JDK5之前,我们只能选择synchronized关键字来实现锁,而JDK5之后,由于volatile关键字得到了升级(具体功能就是上一章所描述的),所以并发框架包便出现了,相比传统的sync 阅读全文
摘要:
ThreadLocal ThreadLocal是什么 感谢: (1 封私信) Java中ThreadLocal的实际用途是啥? - 知乎 (zhihu.com) ThreadLocal使用与原理_敖 丙的博客-CSDN博客_threadlocal使用 ThreadLocal的介绍+经典应用场景 - 阅读全文
摘要:
Java中的引用 阿里面试回顾: 说说强引用、软引用、弱引用、虚引用? - 掘金 (juejin.cn) 前言 我们都知道 JVM 垃圾回收中,GC判断堆中的对象实例或数据是不是垃圾的方法有引用计数法和可达性算法两种。 无论是通过引用计数算法判断对象的引用数量,还是通过根搜索算法(可达性分析法)判断 阅读全文
摘要:
JUC笔记 JUC是java.uitl.concurrent包下的一系列的的并发编程的包。 线程和进程 线程 在操作系统中,线程是比进程更小的能够独立运行的基本单位。同时,它也是CPU调度的基本单位。线程本身基本上不拥有系统资源,只是拥有一些在运行时需要用到的系统资源,例如程序计数器,寄存器和Jav 阅读全文
摘要:
Go语言学习 GO的优势 极简单的部署方式 可直接编译成机器码 不依赖其他库 直接运行即可部署 静态类型的语言 编译的时候检查出来隐藏的大多数问题 语言层面的并发 天生的基因支持 充分的利用多核 强大的标准库 runtime系统调度机制 高效的GC垃圾回收(3色标记和混合写屏障) 丰富的标准库(加解 阅读全文
摘要:
JVM垃圾回收 当需要排查各种内存溢出问题、当垃圾收集成为系统达到更高并发的瓶颈时,我们就需要对这些“自动化”的技术实施必要的监控和调节。 JVM内存分配 Java 的自动内存管理主要是针对对象内存的回收和对象内存的分配。同时,Java 自动内存管理最核心的功能是 堆 内存中对象的分配与回收。 Ja 阅读全文
摘要:
JVM内存结构 Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域。JDK 1.8 和之前的版本略有不同,下面会介绍到。 Jvm 内存区域主要分为线程私有区域 程序计数器、虚拟机栈、本地方法区,线程共享区域 堆、方法区、直接内存。 线程私有数据区域生命周期与线程 阅读全文