设计模式总结(3)==========================================singleton pattern单件模式:确保一个类只有一个实例,并提供一个全局访问点。线程安全:同步getInstance方法:public synchronized static Single...
分类:
其他好文 时间:
2014-06-28 16:31:15
阅读次数:
299
1、在””之间声明方法,该方法在整个JSP页面有效,但是该方法内定义的变量只在该方法内有效。这些方法将在Java程序片中被调用,当方法被调用时,方法内定义的变量被分配内存,调用完毕即可释放内存。当多个客户同时请求一个JSP页面时,他们可能使用方法操作成员变量,对这种情况应给予重视。
解决办法:通过synchronized方法操作一个成员变量来实现一个计数器
<%!
int numbe...
分类:
Web程序 时间:
2014-06-27 23:36:29
阅读次数:
523
AtomicInteger,一个提供原子操作的Integer的类。在Java语言中,++i和i++操作并不是线程安全的,在使用的时候,不可避免的会用到synchronized关键字。而AtomicInteger则通过一种线程安全的加减操作接口。来看AtomicInteger提供的接口。//获取当前的...
分类:
其他好文 时间:
2014-06-26 18:18:11
阅读次数:
272
本篇分析加载配置文件后各个组件是如何运行的?
加载完配置文件订阅者Application类会收到订阅信息执行:
@Subscribe
public synchronized void handleConfigurationEvent(MaterializedConfiguration conf) {
stopAllComponents();
startAll...
分类:
编程语言 时间:
2014-06-24 17:24:59
阅读次数:
445
1.多线程的安全隐患1.1>一块资源可能被多个线程共享,也就是多个线程可能会访问同一块资源,如多个线程访问同一个对象,变量,文件等当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题1.2>安全隐患示意图:1.3>安全隐患的解决办法:互拆锁1.4>互斥锁的使用格式@synchronized(...
分类:
编程语言 时间:
2014-06-24 11:47:01
阅读次数:
298
深入分析Volatile的实现原理
引言
在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。
它在某些情况下比synchronized的开销更小,本文将深入分析在硬件层面上I...
分类:
其他好文 时间:
2014-06-21 19:47:44
阅读次数:
688
在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会导致有锁(后面的章节还会谈到锁)。锁机制存在以下问题:(1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。(2)一个线程持有锁会导致其它所有需要此锁的线程挂起。(3)如果一个优先级高的线程等...
分类:
其他好文 时间:
2014-06-21 08:38:48
阅读次数:
167
1、sleep()使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常。例如有两个线程同时执行(没有synchronized)一个线程优先级为MAX_PRIOR...
分类:
编程语言 时间:
2014-06-21 08:30:15
阅读次数:
285
volatile保证线程间的数据是可见的(共享的),但不保证数据同步volatile相当于synchronized的弱实现,也就是说volatile实现了类似synchronized的语义,却又没有锁机制。它确保对volatile字段的更新以可预见的方式告知其他的线程。volatile包含以下语义:...
分类:
其他好文 时间:
2014-06-21 07:26:46
阅读次数:
311
1.概念 Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象。两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象。2.案例package org.lkl.thread;import java.util.concurren...
分类:
编程语言 时间:
2014-06-21 00:32:08
阅读次数:
324