当前位置: 技术问答>linux和unix
volatile 与 mutex的问题
来源: 互联网 发布时间:2016-04-02
本文导语: 我多个线程检查一个全局状态变量status。对这个变量的操作,读写我都加了mutex的锁。 1.那么是否有必要对这个状态变量加volatile 声明? 2.如果不对status加mutex锁,是不是只要声明成volatile,就不会有问题? ...
我多个线程检查一个全局状态变量status。对这个变量的操作,读写我都加了mutex的锁。
1.那么是否有必要对这个状态变量加volatile 声明?
2.如果不对status加mutex锁,是不是只要声明成volatile,就不会有问题?
1.那么是否有必要对这个状态变量加volatile 声明?
2.如果不对status加mutex锁,是不是只要声明成volatile,就不会有问题?
|
volatile要加,mutex也要用。两个的意义不一样。
|
1. volatile应该加上,阻止编译器对其这里的代码进行的优化。
2. 如果这个状态变量的字长
2. 如果这个状态变量的字长