2013年1月9日

抛砖:VS的编译器到底做了什么?

摘要: 最近在学习并发程序设计,其中有个很重要的概念叫原子操作。网上有很多文章论述原子操作的,其中大部分文章不约而同的都使用到了这个例子——“++”操作,来例证很多高级语言中的一条语句并非是不可拆分的原子操作。出于好奇,本人对“++”操作的原子性在VS2012下写了一个小程序以测试之,于是乎发现了下面的问题。//测试代码TEST(ConcurrenceTest, Atomic){ std::vector<std::thread> threads; threads.push_back(std::thread(std::ref(thread))); threads.push_b... 阅读全文

posted @ 2013-01-09 22:03 MoZhao 阅读(467) 评论(1) 推荐(0) 编辑

导航