Easter79 Easter79
3年前
synchronized底层原理
前言一、synchronized的特性1.1原子性1.2可见性1.3有序性1.4可重入性二、synchronized的用法三、synchronized锁的实现3.1同步方法3.2同步代码块四、
艾木酱 艾木酱
3年前
Yugabyte事务隔离性实现分析
1.事务下面是摘自《PrinciplesofDistributedDatabaseSystems,3rdEdition》中关于事务的一段描述,讲述了事务实现所依赖的组件:事务是对数据库进行一致、可靠访问的基本单元,作为一个比较大的原子操作,负责将数据库从一个状态转移到另一个状态。为了满足一致性,需要对数据完整性限制进行定义,并且需要并发控制算
LosAngel LosAngel
3年前
golang实现MySQL数据库事物的提交与回滚
MySQL事务主要用于处理操作量大,复杂度高的数据。在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务。事务用来管理insert,update,delete语句,事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行。一般来说,事务是必须满足4个条件(ACID)::原子性(Atomicit
Easter79 Easter79
3年前
t
为什么需要锁在任何多用户的数据库中,必须有一套用于数据修改的一致的规则,当两个不同的进程试图同时修改同一份数据时,数据库管理系统(DBMS)负责解决它们之间潜在的冲突。任何关系数据库必须支持事务的ACID属性,所以在开始了解锁之前,首先简单了解一下数据库事务和事务的ACID属性。原子性(Atomicity):原子性意味着数据
zdd小小菜鸟 zdd小小菜鸟
2年前
MySQL面试
MySQL面试1.数据库的三范式是什么?tex第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项。第二范式:要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性。
Wesley13 Wesley13
3年前
MySQL InnoDB如何保证事务特性
如果有人问你“数据库事务有哪些特性”?你可能会很快回答出原子性、一致性、隔离性、持久性即ACID特性。那么你知道InnoDB如何保证这些事务特性的吗?如果知道的话这篇文章就可以直接跳过不看啦(^.^)先说结论:redolog重做日志用来保证事务的持久性undolog回滚日志保证事务的原子性undologredo
Wesley13 Wesley13
3年前
CAS机制与自旋锁
CAS(CompareandSwap),即比较并替换,java并发包中许多Atomic的类的底层原理都是CAS。它的功能是判断内存中某个地址的值是否为预期值,如果是就改变成新值,整个过程具有原子性。具体体现于sun.misc.Unsafe类中的native方法,调用这些native方法,JVM会帮我们实现汇编指令,这些指令是CPU的原子指令,因此
Wesley13 Wesley13
3年前
MySQL 事务的四大特性ACID介绍
事务的四大特性(ACID)1、原子性(Atomicity)事务是一个不可分割的单位,事务中的所有SQL等操作要么都发生,要么都不发生。2、一致性(Consistency)事务发生前和发生后,数据的完整性必须保持一致。3、隔离性(Isolation)当并发访问数据库时,一个正在执行的事务在执行完毕前,对应其他的会话是不可见的,多个并发事
Stella981 Stella981
3年前
Nature 重磅:潘建伟团队实现数十公里远程量子储存器纠缠
北京时间2月13日凌晨,最新一期_Nature_ 发表了中国科学技术大学潘建伟团队的最新重磅成果:两个量子存储器通过光纤跨越数十公里实现远程纠缠。在这项最新研究中,潘建伟、包小辉及其同事利用一种名为腔增强的量子效应,来制备纠缠原子和光子,再将这些纠缠原子和光子转换为适合于电信传输的频率,最后在两个由50公
Wesley13 Wesley13
3年前
Java相关面试题总结+答案(九)
【MySQL】164\.数据库的三范式是什么?第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项。第二范式:属性完全依赖于主键(满足第一范式的前提下),即任意一个字段只依赖于表中的同一个字段。第三范式:任何非主属性不依赖于其它非主属性(满足第二范式的前提下)。即不存在传