5

問題什麼是從線程創建額外線程的最有效方式?

什麼是從線程創建其他線程的最有效方法?

語境

我重新設計的應用程序更有效率。最大的改進之一是運行併發操作;不過,我對併發編程不熟悉。我期望改進的場景如下:

我們有多個市場來從我們的ERP系統導入訂單然後上傳到我們的ERP系統。每個市場都有多個要導入的記錄類型。目前,這完成像MP->RT->RT->RT->RT,其中調用了市場(MP),並且添加了後續記錄類型(RT)。

我想做到的是像一個流程:

MP 
    |-> RT 
    |-> RT 
    |-> RT 
    |-> RT 
MP 
    |-> RT 
    |-> RT 
    ... 

在多個市場中被調用,然後多個記錄類型的同時添加。

我目前使用的executor service控制MP任務,但我想知道處理RT任務的最佳方法。

+2

爲什麼你不使用執行者服務的RT任務呢? – amicngh

+0

@amicngh這實際上是我一直在考慮做的 - 我只是不確定創建多個執行程序服務是否是最有效的方法。 –

+0

每個MP任務處理一堆RT任務,以便更好地創建ThreadPool並將RT任務提交到此池。每個任務都會完成。 – amicngh

回答

6

你不能在ThreadPool(MT)中提交每個RT任務並讓它們分開運行嗎?

您可以擁有多個執行程序(ThreadPool是其中之一,最適合您的需求之一)或者只有一個,每個RT任務都可以在其中進行。

+1

謝謝 - 這與我一直在思考問題的方式相一致(並根據上升的情況,以及其他人如何看待它)。 –

+0

我不確定我是否能夠很好地理解你的問題,但這確實是想到的第一個也是最有效的解決方案。 – Djon

相關問題