摘要:
前言 InnoDB 支持多粒度锁(multiple granularity locking),它允许行级锁与表级锁共存,而意向锁就是其中的一种表锁。 意向锁(Intention Locks) 需要强调一下,意向锁是一种不与行级锁冲突的表级锁,这一点非常重要。意向锁分为两种: 意向共享锁 (inten 阅读全文
摘要:
详解TCP 一、OSI七层模型 应用层 为应用程序提供服务并规定应用程序中通信的相关细节。包括文件传输、电子邮件、远程登录等协议。 表示层 将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。因此它主要负责数据格式的转换。 会话层 负责建立和断开通信连接(数据流动 阅读全文
摘要:
转载地址:https://blog.csdn.net/danchu/article/details/70238002 什么是CGLIB CGLIB是一个强大的、高性能的代码生成库。其被广泛应用于AOP框架(Spring、dynaop)中,用以提供方法拦截操作。Hibernate作为一个比较受欢迎的O 阅读全文
摘要:
什么是MVCC 全称Multi-Version Concurrency Control,即多版本并发控制,主要是为了提高数据库的并发性能。以下文章都是围绕InnoDB引擎来讲,因为myIsam不支持事务。 同一行数据平时发生读写请求时,会上锁阻塞住。但mvcc用更好的方式去处理读—写请求,做到在发生 阅读全文
摘要:
事务原理 事务基础 事务 是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系 统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败。 一致性(Consistency):事 阅读全文
摘要:
你知道什么是CAS机制吗?CAS和Synchronized的区别是什么?适用场景呢?优点与缺点呢? 我们先来看一手代码: 启动两个线程,每个线程中让静态变量count循环累加100次。 该代码输出结果如下。因为这段代码是线程不安全的,所以自增结果很可能会小于200. 我们加上synchronized 阅读全文
摘要:
在《深入理解Java虚拟机(第二版)》*3.2.3节:再谈引用* 中,介绍了Java中的几种引用: 在JDK 1.2以前,Java中的引用的定义很传统:如果reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。 这种定义很纯粹,但是太过狭隘,一个对象在这 阅读全文
摘要:
本文目的: 深入理解Java类加载机制; 理解各个类加载器特别是线程上下文加载器; Java虚拟机类加载机制 虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的 Java 类型,这就是虚拟机的类加载机制。 在Java语言里面,类型的 阅读全文
摘要:
一、Java垃圾回收机制 在java中,程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行。在JVM中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者当前堆内存不足时,才会触发执行,扫描那些没有被任何引用的对象,并将它们添加到要回收的集合中,进行回收 阅读全文
摘要:
抽象类与接口区别 抽象类 Java中接口和抽象类的定义语法分别为interface与abstract关键字。 抽象类:在Java中被abstract关键字修饰的类称为抽象类,被abstract关键字修饰的方法称为抽象方法,抽象方法只有方法的声明,没有方法体。抽象类的特点: a、抽象类不能被实例化只能 阅读全文