说说并发编程 volatile
Java volatile关键字是用来保证变量的线程可见性。到底什么是线程的可见性呢?准确地讲,每次读取volatile变量要从主内从中读取,而不是从CPU cache中读取;写一个volatile变量,要直接写到主内存,而不仅仅是CPU cache。
Java 5 引入了volatile,就[……]
Java volatile关键字是用来保证变量的线程可见性。到底什么是线程的可见性呢?准确地讲,每次读取volatile变量要从主内从中读取,而不是从CPU cache中读取;写一个volatile变量,要直接写到主内存,而不仅仅是CPU cache。
Java 5 引入了volatile,就[……]
类ThreadLocal 提供线程局部变量。这些局部变量不同于正常的变量,每个线程都有自己独立初始化的副本,可以通过threadLocal的set/get方法去改变它的。一般ThreadLocal 常用在类变量上。比如DateFormat类不是线程安全的,没有必要所有的方法都加上同步,这是利用Thr[……]
最近在重构一个项目,开发已经完成,为了给用户和PM展示数据前后的变化,会用到很多报表工具,今天介绍的pivot table就是一个很好用工具,可以很详细的展示不同维度的数据总和。下面就简单介绍一下:
Pivot tables are one of Excel’s most powerful f[……]