我们在学习C语言的32个关键字时,大家都不太注意volatile这个关键字,volatile是一个类型修饰符。volatile的中文意思是“易变的”。那么在程序中我们在什么情况下才使用他呢?我们在分析内核时经常看到这个关键字的使用。举例如下: view plaincopy to clipboard....
分类:
编程语言 时间:
2014-10-28 15:23:51
阅读次数:
145
一、C#中volatilevolatile是C#中用于控制同步的关键字,其意义是针对程序中一些敏感数据,不允许多线程同时访问,保证数据在任何访问时刻,最多有一个线程访问,以保证数据的完整性,volatile是修饰变量的修饰符。1、volatile的使用场景多个线程同时访问一个变量,CLR为了效率,允...
一、为什么要有volatile关键字
估计很多java初学者都被volatile这个关键字迷惑过。虽然网上有很多讨论volatile的文章,但它们有的过于讲述底层原理,而没有说明其应用场景,让初学者看后还是一头雾水;有的过于使用类比讲解,造成了一定的错误,这样的文章更害人。下面,小弟试着分析下volatile关键字的作用及用法,希望能给大家带来一定的启发。文中错误之处,请各位大神指正。
我们知...
分类:
编程语言 时间:
2014-10-26 18:26:51
阅读次数:
227
实现数的原子性加减。什么是原子性的加减呢?
举个例子:如果一个变量 Long value =0;
首先说一下正常情况下的加减操作:value+=1;
1:系统从Value的空间取出值,并动态生成一个空间来存储取出来的值;
2:将取出来的值和1作加法,并且将和放回Value的空间覆盖掉原值。加法结束。
如果此时有两个Thread ,分别记作threadA,threa...
分类:
其他好文 时间:
2014-10-25 23:07:35
阅读次数:
359
1. extern是一个关键字,它告诉编译器存在着一个变量或者一个函数,如果在当前编译语句的前面中没有找到相应的变量或者函数,也会在当前文件的后面或者其它文件中定义2. 调用extern "C"关键字,声明cpp文件中有关代码,需要按照C的方式来生成1. 在函数声明或定义中函数返回类型前加上关键字i...
分类:
其他好文 时间:
2014-10-25 14:29:23
阅读次数:
167
const_cast 去掉类型的const或volatile属性。 struct SA { int i; }; const SA ra; //ra.i = 10; //直接修改const类型,编译错误 SA &rb = const_castSA&>(ra); rb.i = 10;...
分类:
编程语言 时间:
2014-10-24 01:40:40
阅读次数:
164
static关键字至少有下列n个作用: (1)函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值; (2)在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问; (3)在模块内的sta...
分类:
其他好文 时间:
2014-10-24 01:32:13
阅读次数:
172
Java? 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中
Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile
...
分类:
其他好文 时间:
2014-10-22 18:17:03
阅读次数:
197
在《effective java》中看的的知识点,在工作中确实遇到了~
关键字synchronized可以保证在同一时刻,只有一个线程可以执行某一个方法,或者某一个代码块。
同步并不是单单指线程之间的互斥。如果没有同步,一个线程的变化就不能被其他线程看到。同步不仅可以阻止一个线程看到对象处于不一致的状态之中, 它还可以保证进入同步方法或者同步代码块的每个线程,都看到由同一个锁保护的之前的所...
分类:
编程语言 时间:
2014-10-21 23:14:35
阅读次数:
300
volatile int i=10; int j = i; ... int k = i; volatile 告诉编译器i是随时可能发生变化的,每次使用它的时候必须从i的地址中读取,因而编译器生成的可执行码会重新从i的地址读取数据放在k中。 volatile 影响编译器编译的结果,指出,volatil...
分类:
其他好文 时间:
2014-10-21 17:19:33
阅读次数:
171