Top ↑
无匹配结果,请重新输入
交叉事务
Jul 10, 2017 10:38:44 AM
函数 A
    数据操作 1;
    数据操作 2;

函数 B
    数据操作 3;
    -> 函数 A();

函数 C
    数据操作 4;
    -> 函数 A();

则称,A 为 B,C 的交叉操作。 如果,A,B,C 都需要保证事务性,则 A 为 B, C 的交叉事务

Nutz.Dao 的原子操作支持事务嵌套,所以你可以这么实现这三个函数:

函数 A
    Trans.exec(new Atom(){
        public void run(){
            数据操作 1;
            数据操作 2;
        }
    });

函数 B
    Trans.exec(new Atom(){
        public void run(){
            数据操作 3;
            -> 函数 A();
        }
    });

函数 C
    Trans.exec(new Atom(){
        public void run(){
            数据操作 4;
            -> 函数 A();
        }
    });

那么,这三个函数都是事务性的。 就是说,只有最外层的事务是起作用的,被包裹的事务会“融化”在上层事务里

本页面的文字允许在知识共享 署名-相同方式共享 3.0协议GNU自由文档许可证下修改和再使用。