摘要:
http://blog.csdn.net/xiaanming/article/details/9401981 阅读全文
摘要:
Java未开源的Unsafe类Unsafe类可以为我们提供高效并且线程安全方式操作变量,直接和内存数据打交道。获取Unsafe实体的方法 private static Unsafe getUnsafeInstance() throws SecurityException, NoS... 阅读全文
摘要:
CLH算法实现CLH队列中的结点QNode中含有一个locked字段,该字段若为true表示该线程需要获取锁,且不释放锁,为false表示线程释放了锁。结点之间是通过隐形的链表相连,之所以叫隐形的链表是因为这些结点之间没有明显的next指针,而是通过myPred所指向的结点的变化情况来影响myNod... 阅读全文
摘要:
深入理解Java虚拟机 -- 读书笔记:JVM运行时数据区域本文转载:http://blog.csdn.net/jubincn/article/details/8607790本系列为《深入理解Java虚拟机》(周志明著)读书笔记。Java程序员一般都知道JVM中存在栈和堆的,并简单了解对象是在堆上分配的,这点从C/C++转过Java的程序员很容易想到。但Java由于其自身的特性,还有一些其他的内存区域,如下图所示:程序计数器程序计数器占用的内存空间不大,里面记录了各线程当前字节码的行号。JVM的多线程是通过轮流执行CPU时间的方式实现,因此在一个线程离开自己的CPU切片时,需要记录当前的状态( 阅读全文
摘要:
Java并发编程学习笔记 深入理解volatile关键字的作用引言:以前只是看过介绍volatile的文章,对其的理解也只是停留在理论的层面上,由于最近在项目当中用到了关于并发方面的技术,所以下定决心深入研究一下java并发方面的知识。网上关于volatile的文章非常多,但是并没有讲解非常详细的文章。(哪位要是有好的资料麻烦共享一份给我!)多数的都是一些理论讲解,没有实际的例子代码,就算有代码的也测试不出效果,总之理论总是与代码不匹配。后来在我不懈的努力之下总算研究出一些成果,在此分享给大家!如果大家发现有错误的地方欢迎大家指正,谢谢!在Java线程并发处理中,有一个关键字volatile的 阅读全文
摘要:
看看你下面的这两个文件,是不是尺寸差别很大?%JAVA_HOME%/jre/bin/client/jvm.dll%JAVA_HOME%/jre/bin/server/jvm.dllJvm动态库有client和server两个版本,分别针对桌面应用和服务器应用做了相应的优化,client版本加载速度较快,server版本加载速度较慢但运行起来较快。让Tomcat使用Server版本的jvm吧在开始菜单tomcat5->tomcatconfig的java属性中有一项jvm路径指向server目录下的jvm就行了。启动速度对比一下,在我的C4.17512M的机器上client版本一般在8s-1 阅读全文
摘要:
本文转载:http://www.infoq.com/cn/articles/double-checked-locking-with-delay-initialization在java程序中,有时候可能需要推迟一些高开销的对象初始化操作,并且只有在使用这些对象时才进行初始化。此时程序员可能会采用延迟初始化。但要正确实现线程安全的延迟初始化需要一些技巧,否则很容易出现问题。比如,下面是非线程安全的延迟初始化对象的示例代码:public class UnsafeLazyInitialization {private static Instance instance;public static Ins 阅读全文
摘要:
http://jingyan.baidu.com/article/a65957f4b12b8724e77f9b5a.htmlTomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个... 阅读全文
摘要:
本文转载http://xxs673076773.iteye.com/blog/1134805最合适的)最直接的办法是,删掉tomcat下原有Root文件夹,将自己的项目更名为Root。我在$tomcat/webapps/下建了个myjsp目录作为我网站的默认目录,在myjsp中有一个a.jsp文件,... 阅读全文
摘要:
@Aspect@Order(1)public class AopOne { /** * 目标方法执行之前 * @param joinPoint */ @Before("execution(* com.gary.operation.*.*(..))") pub... 阅读全文