在xpages應用程序中我正在運行java代碼以使用apache poi創建文件。事實證明,每次運行之間都需要一段時間。在XPages中運行多個線程
我認爲這與限制有關,也許多線程可能使相同的代碼在多個線程中成爲可能。
我從來沒有這樣做,所以我想知道我應該如何設置?
在xpages應用程序中我正在運行java代碼以使用apache poi創建文件。事實證明,每次運行之間都需要一段時間。在XPages中運行多個線程
我認爲這與限制有關,也許多線程可能使相同的代碼在多個線程中成爲可能。
我從來沒有這樣做,所以我想知道我應該如何設置?
我不確定「some interval」位在技術上隱含什麼,但在XPages應用程序中有很多方法可以執行線程。可能最好的開始是幾年前發佈的「線程和工作」示例,它應該仍然是相關的:https://www.openntf.org/main.nsf/project.xsp?r=project/Threads%20and%20Jobs
查看XPagesExecutor服務。它是一個由XPages引擎管理的內部使用的ThreadPool。
http://hasselba.ch/blog/?p=2180
多線程是非常強大的,但可以使用Domino對象特別是當是一個爛攤子。
一些年來,Xots對我的生產非常穩定。如果Xots tasklet延伸AbstractXotsXspCallable
或AbstractXotsXspRunnable
,ODA的最新版本會自動將所有示波器facesContext
和XSPContext
轉換爲XotsXspContext
對象。它還允許使用XotsUtil.handleException(final Throwable t, final XotsContext xotsContext)
來記錄到OpenLog。關於示波器的一點,我建議只使用requestScope
和viewScope
進行讀取活動。但我沒有使用多個Xots任務更新sessionScope
變量的問題。關於這個話題的各種博客文章在我的博客http://www.intec.co.uk/tag/xots/上。