我正在開發一個計算各種數學函數的java應用程序。 這裏是場景, 我有M運行任務(每個用於計算各種問題,如一個解決二次方程,其他解決指數函數,類似的東西)。 這些必須爲每N分鐘執行M個可運行參數。這些可運行的程序可以不一定以並行方式順序執行。 我是不允許創建多個線程。如何在單線程中使用多個可運行接口?
我可以使用ScheduledExecutorService定期運行任務。根據Javadoc,ScheduledExecutorService只能使用一個runnable。 有方法,如invokeAll(...),它允許我們提供可運行的集合,但這些不提供調度選項。
通過互聯網,我發現瀏覽,使用Thread.sleep()方法是不是來開發應用程序的好方法。
任何建議?
'ScheduledExecutorService'看起來像一個非常適合我,因爲給定的用例。文檔中哪裏只說一個Runnable? – nullpotent
如果你一次只能運行一件事,而你需要安排一些事情,我認爲你可以使用石英和jms的組合。 – Leo