java thread volatile 理解
Java Thread有一个 volatile关键字,主要用来防止多线程访问公共变量,不能及时被其它线程正确访问, 而造成的不同步问题。
比如ThreadA 和ThreadB 同时访问一个 int a = 0; 并且修改,
可能会造成 ThreadA 修改a变量后,ThreadB访问a变量还是原来的值。
因此要加上 volatile int a = 0;
多线程其实是cpu拿出一点资源单独去做另外一些事情,线程会把一些变量放到一个小寄存器中,
这样访问数据的,不能马上更新同步到内存中去。因此加上volatile ,让所有的线程都访问同一个地方,这样数据都会同步。但性能下降了(MS都直接访问内存)。
相关文档:
距离Java7的MR版本发布有段时间了,通过安装试用之后的总体感觉是:速度又快了。仔细阅读了Java7的相关文档发现,Java7拥有如下的一些新的特性。
首先是模块化特性:如果您安装和使用过NetBeans6.7的话,是不是会有一个很大的感觉,就是NetBeans6.7的启动速度比以前快了很多,当然并不是NetBeans已经使用了Java7,而是NetB ......
First
Parsing an XML Document
To read an XML document, you need a DocumentBuilder object, which you get from a DocumentBuilderFactory, like this:DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
You can now read a docu ......
1、 http://java.sun.com/ ;;(英文)
Sun的Java网站,是一个应该经常去看的地方。不用多说。
2、 http://www-900.ibm.com/developerWorks/cn/ ;;
IBM的developerWorks网站,英语好的直接去英文主站点看。这里不但是一个极好的面向对象的分析设计网站,也是Web Services,Java,Linux极好的网站。强烈推荐!!!
3、 h ......