EntityManager tidak dimaksudkan untuk digunakan oleh banyak utas. Anda perlu mendapatkan instance terpisah dari EntityManager untuk setiap utas.
Sebenarnya, jika Anda menggunakan EJB atau Spring, Anda dapat menggunakan EntityManager cakupan transaksi , yang dapat digunakan dari beberapa utas (ini adalah proxy yang mendelegasikan pekerjaan sebenarnya untuk memisahkan instance terikat utas dari EntityManager ), tapi saya pikir itu bukan kasus Anda.