码迷,mamicode.com
首页 > 编程语言 > 详细

线程安全的定义

时间:2017-08-20 10:25:14      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:加锁   需要   调度   tor   ring   strong   ++   操作系统   操作   

1.1.1 线程安全的定义

依据[JCP],一个线程安全的class 应当满足以下三个条件:

多个线程同时访问时,其表现出正确的行为。

无论操作系统如何调度这些线程, 无论这些线程的执行顺序如何交织(interleaving)。

调用端代码无须额外的同步或其他协调动作。

依据这个定义,C++ 标准库里的大多数class 都不是线程安全的,包括std::string、std::vector、std::map 等,因为这些class 通常需要在外部加锁才能供多个线程同时访问。

线程安全的定义

标签:加锁   需要   调度   tor   ring   strong   ++   操作系统   操作   

原文地址:http://www.cnblogs.com/cyh2009/p/7398671.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!