2012-01-12 51 views
1

aggregate方法scala.collection.parallel.immutable.ParIterableLike使用線程的過程。在EJB容器中使用Scala Parallel Collections是否違法?

這是否意味着我不應該使用並行集合,如果我的Scala代碼是從EJB調用的,因爲在EJB中,它非法執行自己的線程?

如果這是非法的,是否有計劃製作一個EJB友好版本來使用EJB 3.1 @Asynchronous註釋?

參見:http://markusjais.com/scalas-parallel-collections-and-the-aggregate-method/

+7

是的,如果你這樣做,你會做10年的生命監禁時間。嚴重非法的東西。 – 2012-01-12 20:50:17

回答

1

其「非法」在某種意義上說,它不推薦,而不是在某種意義上說,它無法做到的。它不推薦使用,因爲EJB容器負責啓動/停止/激活/鈍化線程。如果你的bean啓動了一個線程並讓它無限期地運行,你肯定會進入奇怪的狀態。但是,如果您的bean啓動了一個線程(例如通過使用par收集操作)並且在您的par操作完成之前沒有返回容器,那麼您可能會很好。

有關更多詳細信息,請參見http://java.sun.com/blueprints/qanda/ejb_tier/restrictions.html#threads

相關問題