volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一..
分类:
其他好文 时间:
2016-11-29 15:08:25
阅读次数:
157
数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。 (1) 面向主题:指数据仓库中的数据是按照一定的主题域进行组织。 ...
分类:
数据库 时间:
2016-11-29 14:51:28
阅读次数:
156
原文地址:http://www.ibm.com/developerworks/cn/java/j-jtp06197.html Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较 ...
分类:
编程语言 时间:
2016-11-28 20:37:39
阅读次数:
296
From: http://www.cnblogs.com/aigongsi/archive/2012/04/01/2429166.html 在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。 Java语言是支 ...
分类:
编程语言 时间:
2016-11-26 02:26:13
阅读次数:
169
引言: 在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。 可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。 Volatile的官方定义 Jav ...
分类:
编程语言 时间:
2016-11-25 17:38:21
阅读次数:
166
用FindBugs跑自己的项目,爆出两处An increment to a volatile field isn’t atomic。相应报错的代码如下:volatile int num = 0;
nu...
分类:
其他好文 时间:
2016-11-23 14:47:28
阅读次数:
276
1、Volatile:http://www.cnblogs.com/aigongsi/archive/2012/04/01/2429166.html 2、悲观锁与乐观锁:http://www.cnblogs.com/softidea/p/5309312.html 3、乐观锁的一种实现方式:http: ...
分类:
其他好文 时间:
2016-11-21 14:37:59
阅读次数:
129
12.2硬件的效率与一致性
由于计算机的存储设备与处理器的运算速度有几个数量级的差距,所以现代计算机系统都不得不加入一层读写速度尽可能接近处理器运算速度的高速缓存(Cache)来作为内存与处理器之间...
分类:
编程语言 时间:
2016-11-20 14:10:15
阅读次数:
221
在Effective Java中看到的,试了一下,有点意思,考查的知识点是volatile关键字。 下面这段代码,预期是打印it takes xxxx miliseconds. 。但实际上,陷入了死循环。 学习过Java内存模型就会知道,这是因为stopRequested这个域,在主线程和backg ...
分类:
其他好文 时间:
2016-11-20 06:24:44
阅读次数:
195
static intphp_handler(request_rec *r) { /* Initiliaze the context */ php_struct * volatile ctx; void *conf; apr_bucket_brigade * volatile brigade; apr ...
分类:
其他好文 时间:
2016-11-18 22:01:20
阅读次数:
167