我的Grails 1.3.7應用程序需要處理大的XML文件,所以我有一個控制器,我上傳了大文件,然後我將這個文件在服務器上的路徑傳遞給後臺線程,以便處理我可以立即返回控制器操作。在Grails中保留對後臺線程的引用?
現在,我使用的是Grails Executor插件,它工作正常。我有一個上傳域對象,隨着處理過程的進行而更新(當前狀態,已處理元素的數量等)。但現在我有2個要求:
- 當應用程序崩潰或服務器關機,我想攔截和更新我上傳域說,過程被中斷
- 我希望用戶可以點擊一個鏈接時,中斷處理自己和可能來自控制器動作恢復它
有沒有辦法,我能堅持一提到我的後臺任務,並與攔截框架的java.util.concurrent任何中斷(一種方式由Executor插件使用)?
如果我不能用util.concurrent做,它可以與其他插件/框架?例如,我看了一下Quartz,但我不明白該怎麼做。