tom*_*h13 4 c++ multithreading vector
C++ STL中定义的向量是重入的还是线程安全的?我可以使用两个线程并在不使用互斥锁的情况下在矢量的两半上工作(在这种情况下是排序)吗?例如:
int size = (Data_List.size())/2;
Thread A()
{
................ // Do we need to lock Data_list with a mutex
sort(Data_List.begin(),Data_List.begin()+size,cmp);
}
Thread B()
{
....// Do we need to lock Data_list with a mutex
sort(Data_List.begin()+(size+1),Data_List.end(),cmp);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是我们需要使用互斥锁来锁定Data_List的访问权限吗?
注意:cmp函数是一个常规的int比较函数.
| 归档时间: |
|
| 查看次数: |
2294 次 |
| 最近记录: |