概念
一个业务操作中,主线程,开启若干个子线程执行操作,每个子线程会开启自己的事务。由于事务是与数据库的会话,每个线程会开启一个会话。所以主线程的事务,与子线程无关,子线程与子线程也是无关的!所以就会引入 多线程事务问题:即:一个主线程,开启若干子线程的事务操作,保证任意子线程回滚,所有线程的事务操作都执行回滚!
解决多线程事务
痛点:
每个线程的事务相互隔离
且执行的run方法不会被主线程拦截
run方法不可使用临时变量 如for循环的i 建议在外部定义!
概念
一个业务操作中,主线程,开启若干个子线程执行操作,每个子线程会开启自己的事务。由于事务是与数据库的会话,每个线程会开启一个会话。所以主线程的事务,与子线程无关,子线程与子线程也是无关的!所以就会引入 多线程事务问题:即:一个主线程,开启若干子线程的事务操作,保证任意子线程回滚,所有线程的事务操作都执行回滚!
解决多线程事务
痛点:
每个线程的事务相互隔离
且执行的run方法不会被主线程拦截
run方法不可使用临时变量 如for循环的i 建议在外部定义!