1、简述事务的ACID特性? 2、什么是死锁?怎么预防死锁?
时间: 2023-06-02 20:04:17 浏览: 146
1、ACID是指事务的四个特性,分别是原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
- 原子性:指一个事务中的所有操作要么全部成功,要么全部失败,不会出现中间状态。
- 一致性:指事务执行前后数据库中的数据必须保持一致性状态。
- 隔离性:指每个事务的执行都应该与其他事务的执行相互隔离,互不影响。
- 持久性:指一旦事务提交,其更改就应该永久保存在数据库中。
2、死锁是指两个或多个事务在执行过程中因相互等待对方释放锁而陷入的互相等待的状态。死锁在多线程并发控制中是非常常见的问题,如果处理不当会导致系统挂起甚至崩溃。
防止死锁的方法主要有两种:
- 预防死锁:通过规划事务执行顺序、避免事务持有不同资源而产生循环等方法,避免死锁的发生。
- 解决死锁:当死锁已经发生时,通过释放资源、撤销进程等方法解决死锁问题,使得进程可以继续执行。
阅读全文