当前位置:  技术问答>linux和unix

volatile 与 mutex的问题

    来源: 互联网  发布时间:2016-04-02

    本文导语:  我多个线程检查一个全局状态变量status。对这个变量的操作,读写我都加了mutex的锁。 1.那么是否有必要对这个状态变量加volatile 声明? 2.如果不对status加mutex锁,是不是只要声明成volatile,就不会有问题? ...

我多个线程检查一个全局状态变量status。对这个变量的操作,读写我都加了mutex的锁。

1.那么是否有必要对这个状态变量加volatile 声明?

2.如果不对status加mutex锁,是不是只要声明成volatile,就不会有问题?

|
volatile要加,mutex也要用。两个的意义不一样。

|
1. volatile应该加上,阻止编译器对其这里的代码进行的优化。

2. 如果这个状态变量的字长

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.lang.model.element枚举modifier的类成员方法: volatile定义及介绍
  • 构造器也可以带public吗?volatile怎么用?
  • java命名空间java.lang.reflect类modifier的类成员方法: volatile定义及介绍
  • 新手请教 asm_volatile?
  • 请问:“volatile”是c语言的关键字么?有什么用处?
  • volatile的使用
  • __asm__ __volatile__("": : :"memory");啥意思啊?
  • asm volatile("incl %0":"+r"(b));是原子操作么。。。
  • volatile是不是只能用来修饰变量,如果想要禁止gcc对一段c代码进行优化该怎么办?
  • 请教volatile关键字的用法!!!
  • ”整型变量j说明为volatile,这样就阻止了优化程序除去循环语句“ 这么理解这句话,为什么会除去循环语句?
  • java多线程编程之慎重使用volatile关键字
  • C中的volatile使用方法
  • 深入解析Java中volatile关键字的作用
  • 探讨C语言中关键字volatile的含义
  • C语言中auto,register,static,const,volatile的区别详细解析
  • C语言中const,volatile,restrict的用法总结
  • 深入多线程之:内存栅栏与volatile关键字的使用分析


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3