0
我正在寫一個C++程序在Qt中有一個OnReceive(int值)事件。它捕獲並將整數值push_back到std :: vector中。在另一個工作線程上,我可以訪問這個向量,我可以設置一個信號量來等待20個值,然後我可以處理它們。生產者和消費者優化
我想做一些優化。
我的問題是如何將我的緩衝區或向量分割爲0-4,5-10,11-19的3個部分,例如只要向量中有5個值可用(例如0到4) ,第二名工作人員開始處理他們,而第一個線程仍然繼續獲得其餘的值?
通過這種方式我想我的線程之間有重疊。所以他們不需要連續運行。
謝謝。
在互聯網上搜索「雙緩衝」。 –