Open yuluyi opened 5 years ago
和RxJava一起用的时候, 因为 observeOn在一个非spring的线程, 会提示synchronization not active。 通过 手动 调用
TransactionSynchronizationManager.initSynchronization()
可以解决这个问题。
但是如果有并发的transaction的时候, 会报
java.lang.RuntimeException: transaction already started,but try to start again。
即使我 observeOn(Schedulers.newThread()) 也没有用。 请问是什么问题呢?
et的事务是依赖于spring的单机事务的
用et的话,只要求执行et的代码时,被spring定义的事务包裹
这代码通常不需要外部调用,通过@Transactional或者xml或者TransactionTemplate等开启事务即可
和RxJava一起用的时候, 因为 observeOn在一个非spring的线程, 会提示synchronization not active。 通过 手动 调用
可以解决这个问题。
但是如果有并发的transaction的时候, 会报
即使我 observeOn(Schedulers.newThread()) 也没有用。 请问是什么问题呢?