01 2017 档案

摘要://饿汉式,在多线程下是安全的 public class Single { private static final Single s=new Single(); private Single(){}; public static Single getInstance(){ return s; } } //懒汉式,非线程安全,必须使用同步 pu... 阅读全文
posted @ 2017-01-22 20:32 抡起菜刀砍小强 阅读(249) 评论(0) 推荐(0)
摘要:如何找出线程安全问题: 1.明确那些代码块是多线程运行代码 2.明确共享数据 3.明确多线程运行代码中哪些语句是操作共享数据的 同步函数示例: 阅读全文
posted @ 2017-01-21 22:43 抡起菜刀砍小强 阅读(838) 评论(0) 推荐(0)
摘要:编写多线程程序时,一定需要注意安全问题。 多线程安全问题的原因:当多条语句在操作同一个线程共享数据时,一个线程对多条语句只执行一部分(未执行完),此时另一个线程参与进来,导致了共享数据的错误。 解决办法:当多条语句操作共享数据的时,只能先让一个线程执行完,其它线程不能参与。 同步前提: 1.必须要有 阅读全文
posted @ 2017-01-21 22:08 抡起菜刀砍小强 阅读(170) 评论(0) 推荐(0)
摘要:介绍 意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 主要解决:主要解决接口选择的问题。 何时使用:我们明确地计划不同条件下创建不同实例时。 如何解决:让其子类实现工厂接口,返回的也是一个抽象的产品。 关键代码:创建过程在其子类执行。 PHP代 阅读全文
posted @ 2017-01-20 14:23 抡起菜刀砍小强 阅读(186) 评论(0) 推荐(0)
摘要:说明: 意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 主要解决:一个全局使用的类频繁地创建与销毁。 何时使用:当您想控制实例数目,节省系统资源的时候。 如何解决:判断系统是否已经有这个单例,如果有则返回,如果没有则创建。 关键代码:构造函数是私有的。 PHP代码实例: JAVA代码实 阅读全文
posted @ 2017-01-20 10:50 抡起菜刀砍小强 阅读(174) 评论(0) 推荐(0)