只有dataitem的before和after里面是对数据的并发控制的加锁。 但是在VM实现类里面的setMax方法里面是既有dataitem.before(),也有dateitiem.after()。 strcuct-2pl应该是只有在事务提交或者终止的时候才会释放锁的,但项目这两方法里面没有释放锁的代码。 (也看过作者dscn的文档,并没有关于2pl的实现)