首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Effective STL 12 STL器皿线程安全性考虑

2013-10-19 
Effective STL 12 STL容器线程安全性考虑************************************************时间:2013年10

Effective STL 12 STL容器线程安全性考虑

************************************************

时间:2013年10月18日

作者:常保龙

地点:核所C105

************************************************ 

STL容器的线程安全性:

1、多个读取者是安全的。多线程可能同时读取一个容器的内容,这将正确的执行。当然,在读取时不能有任何写入者操作这个容器;

2、对不同容器的多个写入者是安全的。多线程可以同时写不同的容器。

举例说明:

vector<int> v;...{// 建立新块;Lock<vector<int> > lock(v);// 获取互斥量vector<int>::iterator first5(find(v.begin(), v.end(), 5));if (first5 != v.end()) {*first5 = 0;}}
C++保证如果抛出了异常,局部对象就会被销毁,所以即使当我们正在使用Lock对象时有异常抛出,Lock也将释放它的互斥量。


热点排行