- 博客(5)
- 收藏
- 关注
原创 redo和undo日志
undo作用于事务 作用:可以确保执行过程中的回滚 redo作用于Buffer pool 作用:确保缓存池中的数据更安全高效地刷新到磁盘 详解 1.undo日志用于存放数据修改被修改前的值,假设修改 tba 表中 id=2的行数据,把Name=’B’ 修改为Name = ‘B2’ ,那么undo日志就会用来存放Name=’B’的记录,如果这个修改出现异常,可以使用undo日志来实现回滚操作,保证事务的一致性。 对数据的变更.
2021-06-22 01:32:02
124
原创 ReentrantLock--设置获取锁的超时时间
在多线程并发下,在synchronize方法内,需要手动count时间/次数,超时后break,也可以直接利用ReentrantLock的tryLock方法,设置锁超时时间。 package com.dq; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.ReentrantLock; public class ThreadTest { private static ReentrantLock lock =
2021-06-10 17:14:52
3532
原创 线程Interrupt与Stop对比
总结:尽量使用Interrupt来结束线程。 原因: 线程在被调用Interrupt前有2种情况 a 线程处于阻塞状态: 当线程使用了sleep wait socket中的receiver ,accept等方法时。 此时调用线程的interrupt方法,会抛出interruptException。 阻塞中的方法抛出异常,通过代码捕获,然后break跳出循环状态,才能正常结束run方法。 b 线程是未阻塞状态, 使用isinterrupt 方法判断线程的中断标志来退出循环。 使用interrupt
2021-03-10 22:31:59
795
原创 使用唯一性索引实现数据新增不重复
使用唯一性索引实现数据新增不重复目的唯一性索引 目的 在很多业务场景中,我们很经常需要判断数据在数据库中是否已经存在,如果存在,则更新已有数据,不存在则insert。常规做法有2种: select count(1) from table where 条件 ,insert into table…; 对字段建立唯一性索引,执行一次插入语句即可 前者不用多说,说下后者的实现过程。 唯一性索引 比如某...
2019-12-02 00:23:58
880
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅