letter Y A N. G Brass Letter F a n-spo D Pewter Uppercase Letter I N G
随笔 - 4, 文章 - 10, 评论 - 2, 引用 - 0
数据加载中……

10 2008 档案

ClassLoader
     摘要: 详细解释classloader的加载机制  阅读全文

posted @ 2008-10-15 21:04 rainman 阅读(287) | 评论 (0)  编辑

正确使用 Volatile 变量
     摘要: java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。在这期的 Java 理论与实践 中,Brian Goetz 将介绍几种正确使用 volatile 变量的模式,并针对其适用性限制提出一些建议。
  阅读全文

posted @ 2008-10-06 21:30 rainman 阅读(204) | 评论 (0)  编辑

ThreadLocal与synchronize
     摘要: Java良好的支持多线程。使用java,我们可以很轻松的编程一个多线程程序。但是使用多线程可能会引起并发访问的问题。synchronized和ThreadLocal都是用来解决多线程并发访问的问题。大家可能对synchronized较为熟悉,而对ThreadLocal就要陌生得多了。
并发问题。当一个对象被两个线程同时访问时,可能有一个线程会得到不可预期的结果。   阅读全文

posted @ 2008-10-06 12:13 rainman 阅读(729) | 评论 (1)  编辑

使用dom4j解析XML
     摘要: dom4j 是一种解析 XML 文档的开放源代码 XML 框架。本文介绍如何使用包含在 dom4j 中的解析器创建并修改 XML 文档。
dom4j API 包含一个解析 XML 文档的工具。本文中将使用这个解析器创建一个示例 XML 文档。清单 1 显示了这个示例 XML 文档,catalog.xml  阅读全文

posted @ 2008-10-05 21:30 rainman 阅读(1372) | 评论 (0)  编辑

再谈ReentrantLock
     摘要: 重入锁(ReentrantLock)是一种递归无阻塞的同步机制。以前一直认为它是synchronized的简单替代,而且实现机制也不相差太远。不过最近实践过程中发现它们之间还是有着天壤之别。
以下是官方说明:一个可重入的互斥锁定 Lock,它具有与使用 synchronized 方法和语句所访问的隐式监视器锁定相同的一些基本行为和语义,但功能更强大。ReentrantLock 将由最近成功获得锁定,并且还没有释放该锁定的线程所拥有。当锁定没有被另一个线程所拥有时,调用 lock 的线程将成功获取该锁定并返回。如果当前线程已经拥有该锁定,此方法将立即返回。可以使用 isHeldByCurrentThread() 和 getHoldCount() 方法来检查此情况是否发生。  阅读全文

posted @ 2008-10-03 17:55 rainman 阅读(3950) | 评论 (0)  编辑

Java 理论与实践: 流行的原子
     摘要: 在 JDK 5.0 之前,如果不使用本机代码,就不能用 Java 语言编写无等待、无锁定的算法。在 java.util.concurrent 中添加原子变量类之后,这种情况发生了变化。请跟随并行专家 Brian Goetz 一起,了解这些新类如何使用 Java 语言开发高度可伸缩的无阻塞算法。您可以在本文的 论坛中与作者或其他读者共享您对本文的看法。(也可以通过单击文章顶部或者底部的 讨论链接来访问讨论。)  阅读全文

posted @ 2008-10-03 14:35 rainman 阅读(232) | 评论 (0)  编辑

实现 Java 多线程并发控制框架
     摘要: Java 提供了语言级别的线程支持,所以在 Java 中使用多线程相对于 C,C++ 来说更简单便捷,但本文并不是介绍如何在 Java 中使用多线程来来解决诸如 Web services, Number crunching 或者 I/O processing 之类的问题。在本文中,我们将讨论如何实现一个 Java 多线程的运行框架以及我们是如何来控制线程的并发同步以及顺序执行的。  阅读全文

posted @ 2008-10-02 23:12 rainman 阅读(626) | 评论 (1)  编辑

ByteArrayOutputStream和ByteArrayInputStream详解
     摘要: ByteArrayOutputStream类是在创建它的实例时,程序内部创建一个byte型别数组的缓冲区,然后利用ByteArrayOutputStream和ByteArrayInputStream的实例向数组中写入或读出byte型数据。在网络传输中我们往往要传输很多变量,我们可以利用ByteArrayOutputStream把所有的变量收集到一起,然后一次性把数据发送出去  阅读全文

posted @ 2008-10-01 23:39 rainman 阅读(19656) | 评论 (0)  编辑