2011年10月6日
摘要: 多线程程序中操作的原子性0. 背景原子操作就是不可再分的操作。在多线程程序中原子操作是一个非常重要的概念,它常常用来实现一些同步机制,同时也是一些常见的多线程Bug的源头。本文主要讨论了三个问题:1. 多线程程序中对变量的读写操作是否是原子的?2. 多线程程序中对Bit field(位域)的读写操作是否是线程安全的?3. 程序员该如何使用原子操作?1. 多线程环境下对变量的读写操作是否是原子的?我们先从一道很热门的百度笔试题讲起。很多人讲不清楚其背后的原理,下面我们就来对它进行一下剖析(其实这个题目有点歧义,后面我们会讲到):以下多线程对int型变量x的操作,哪几个需要进行同步:( )A. x 阅读全文
posted @ 2011-10-06 19:42 rfcff 阅读(510) 评论(0) 推荐(0) 编辑