我想知道单个模式的示例,例如5个线程试图访问单个文本文件。只有一个人应该能够读取它,然后创建一个显示日期,线程名称,内容的文件。
Textfile- source
A B C D
Text file - details of the threads and contents
Date & Time Thread name Contents
mar 25 10.02 a A B C D
mar 25 10.05 b A B C D
谢谢
答案 0 :(得分:1)
我不同意@Peter Mensik。
实际上,在多线程环境中,双重检查锁定解决方案已被打破。 http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html
解决方案(和最佳实践)是使用按需初始化模式:
本页底部的示例。
http://best-practice-software-engineering.ifs.tuwien.ac.at/patterns/singleton.html
使用JDK 1.4及更早版本时,此解决方案非常有用。
在JDK 1.5中,您也可以使用枚举。
为了更好地理解,您可以阅读这篇优秀的文章:
http://www.ibm.com/developerworks/java/library/j-dcl/index.html