Mysql
2023-03-31 09:03
436
0
每次读取数据时都很乐观,认为绝不会产生并发问题(不会有其他线程对数据进行修改)。只有在更新数据时才会去判断其他线程在此期间有没有对数据进行修改。顾名思义,总是假设最坏的情况。每次读取数据时都认为其他线程会同时修改数据,所以每次读取都会加(悲观)锁。若数据已经发生了变化则表明期间有被修改,则事务回滚并错误提示给用户端。一旦加锁,不同线程同时执行时只能有一个线程执行成功,其他的线程在入口处等待,直到锁被释放。简单理解:别想太多,你尽管用,出问题了算我怂,大不了操作失败后事务回滚、提示用户!