0
我的代碼獲取事件通知,我用它來處理事件。早些時候它是單線程的,但事件通知處理起來相當快。我改變了我的代碼,使用Pool進行多處理。這就是我所做的是multiprocessing.Pool使用我所有的進程?
- 創建
Pool = multiprocessing.pool(processes=4)
(我可以處理最多11個核心) - 事件添加到池異步 -
pool.apply_async(go, ["event-1"])
這就是我所做的。以簡單的方式,我將事件添加到池中,池將由4個進程處理。現在我的問題是。
- 我該如何測試我的事件是通過使用所有4個進程來處理的?我每週日開始我的日程安排,星期一很好,週二我仍然看到週一的事件正在處理中,星期三的數量會增長很多星期二事件在星期三處理,等等......
我基本上是Java傢伙,我很難找到Python如何在內部處理我的事件。我可以簡單地增加流程,但我不確定這是否有幫助?
我的基本要求是
- 我註冊自己的事件,並希望處理每一個事件
- 我想處理的單獨處理事件,因此主進程/線程仍然繼續監聽新事件
- 我並不擔心處理事件的結果。 (但
pool.apply_async(func1,["event1"])
返回值)
請你能幫我填補一些想法嗎?