我的應用程序目前有一個「任務」列表(每個任務都包含一個函數 - 該函數可以像打印某些東西一樣簡單,但也可能更復雜),它可以循環使用。 (附加說明:大多數任務在執行後發送一個數據包)由於其中一些任務可能需要一段時間,因此我考慮爲每個任務使用不同的異步線程,從而允許同時運行所有任務。
這是一個聰明的事情嗎?
一個問題是,我不可能事先知道任務的數量,因此可能會導致創建不少線程,並且我在某處讀到每個不同的硬件都有其限制。我打算在一個樹莓派上運行我的應用程序,我認爲我將一直需要運行5到20個任務。每個任務有一個異步線程?
另外,一些任務有較低的「優先級」來運行其他人。
我應該先運行重要的任務,然後再運行不太重要的任務嗎? (這裏的問題是,如果所有任務所需的時間總和超過了應該運行某個特定的重要任務的時間,那麼我的應用程序將不再準確)或者在異步線程中實現所有內容?或者只是嘗試通過在異步線程中進行「數據包發送」來使所有事情變得更快一些,因此無需等到數據包實際發送完畢?
你看了OpenMP(openmp.org) –
@WilliamJones謝謝,我會給它一個閱讀。但我認爲,現在我的問題仍然是理論上的,已經沒有選擇圖書館了:首先,我需要知道我想做什麼是可能的,或者如果有更好的方法。 –