我正在尋找使用STL容器(如std :: map和std :: vector)和pthreads的最佳策略。Linux中的STL容器和線程(併發寫入)
什麼是規範的路要走?一個簡單的例子:
std::map<string, vector<string>> myMap;
我們如何保證併發性?
mutex_lock;
write at myMap;
mutex_unlock;
此外,我想知道如果pthreads和STL在使用時遇到性能問題。
系統:LIUNX,G ++,並行線程,無刺激,無英特爾TBB
RAII是一個好主意,但是當我將元素push_back到我的向量時,這是否適用? – cateof
@cateof:是的,如果在調用'push_back'時某個其他線程正在讀取矢量,那麼這是一個問題。所以是的。 –