0
有沒有一種方法可以在單個EJB執行中運行多個線程?我試圖做的基本上是一個ETL過程:MDB的onMessage
方法(@MessageDriven
)將運行一個查詢,然後啓動多個線程插入行到某個目標表(所有本機JDBC,而不是JPA )EJB/MDB中的多線程
它也可以很容易地成爲@Stateless
會話bean。
問題是 - 你可以在EJB內使用Executors.newFixedThreadPool
嗎?即使根據規範它不是嚴格合法的,如果後臺線程沒有訪問任何Java EE /容器管理的資源,是否可以避開它?
如果沒有,是否有更好的方法來做到這一點?我知道@Async
,但是會失去對每個作業允許的線程數量的控制權。