摘要: 对于所有对象都同用的方法1 考虑用静态工厂方法替代构造器类可以提供一个公有的静态工厂方法,他只是一个返回类的实例的静态方法。实例受控类public static Boolean valueOf(boolean b){ return b ? Boolean.TRUE : Boolean.FALSE;}编写实例受控类有几个原因。实例受控使得类可以确保他是一个Singleton或者是不可实例化的。他还使得不可变类可以确保不会存在两个相等的实例。API可以返回对象,同时又不会使对象的类变成公有的。以这种方式隐藏实现类会使API变得非常简介。这种结束适用于基于接口的框架(java.util.Col... 阅读全文
posted @ 2012-10-24 17:58 rilley 阅读(1077) 评论(0) 推荐(0) 编辑
摘要: 死锁原因系统资源不足线程运行顺序不合适资源分配不当必要条件互斥条件:一个资源只能被一个线程使用请求和保持条件:一个线程因请求资源而阻塞时,对已获的资源保释不放不剥夺条件:线程已获得的资源,在未使用完之前不能强行剥夺循环等待条件:若干线程之间形成一种首尾相接的循环等待资源关系预防死锁资源一次性分配:(破坏请求和保持条件)可剥夺资源:当某线程新的资源未满足时,释放已占有资源(破坏不剥夺条件)资源有序分配法:给每个资源赋予一个编号,每一个线程按照编号递增的顺序请求资源,释放则相反(破坏循环等待条件)解除死锁撤销限于死锁的全部线程逐个撤销限于死锁的线程,直到死锁不存在从陷于思所得线程中逐个强迫放弃所占 阅读全文
posted @ 2012-10-24 11:51 rilley 阅读(386) 评论(1) 推荐(0) 编辑