Question

Est-il possible un EntityManager peut participer smoothely à plusieurs transactions simultanées?

Eh bien, pas en même temps. Quelque chose comme:

  1. Démarrer tx 1
  2. Faire des trucs dans tx 1
  3. Démarrer tx 2
  4. Faire des trucs dans tx 2
  5. tx 2 S'engager
  6. Inscrivez-vous tx 1 retour
  7. Faire des trucs dans tx 1
  8. tx 1 S'engager

à pas suivie par une quelconque ne se chevauchent pas.

Était-ce utile?

La solution

séparés transactions? Non, il ne peut pas.

Tentative d'appeler EntityTransaction.begin ( ) sur une transaction active (qui est ce que vous avez à faire, diretly ou indirectement) entraînera IllegalStateException d'être jeté.

Unité de concepts de travail étendue / transaction sont expliqués en détail dans la section Mise en veille prolongée EntityManager manuel.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top