因为懒汉式的实现是线程安全的,所以会降低整个访问速度,而且每次访问都要判断一次。有没有更好的方式实现呢?可以使用“双重检查枷锁”的方式来实现。

所谓“双重检查加锁”机制,是指并不是每次静茹getInstance方法都需要同步,而是先不同步。当进入方法后,先检查实力是否存在,如果不存在才进行下面的同步块,着是第一次检查,进入同步代码块,再次检查实力是否存在。如果不存在,就在同步的情况下创建一个实例,这是第二重检查。这样一来,整个过程只需要一次同步,从而减少了多次在同步情况下进行判断所浪费的时间。

在日常工作中经常需要对hadoop的配置文件的值进行替换

方法为:

change_xml_value()
{
name=$1
value=$2
file=$3
sed -i "/>${name}</,/property/ s#<value>.*</value>#<value>${value}</value>#g" ${file}
}

  调用格式为:

change_xml_value 配置项的名称 配置项的新值 配置文件的路径

如:需要修改hdfs-site.xml中dfs.nameservices的值为hdfsname,hdfs-site.xml的路径为/home/hdfs/etc/hadoop/ 则需要执行以下命令:
change_xml_value "dfs.nameservices" "hdfsname" /home/hdfs/etc/hadoop/hdfs-site.xml

 



最新文章

  1. windows和linux平台下的通用时间测试函数
  2. git使用
  3. Django~urls.py---&gt;views.py
  4. python 字符串截取
  5. Winform ListView 元素拖动
  6. ASM基本操作
  7. javascript笔记——placehold
  8. Eclipse下Properties解析(重要的可修改的会用红笔标注)
  9. Javascript实现图片库效果
  10. asp.net中.ashx文件接参
  11. freemarker导出word文档——WordXML格式解析
  12. LDA-线性判别分析(二)Two-classes 情形的数学推导
  13. JavaScript窗体Window.ShowModalDialog使用详解
  14. 《开始使用Linux》单元测验 1
  15. Asp.Net下通过切换CSS换皮肤
  16. xe Style
  17. LeetCode CombinationSum
  18. Oracle数据库从入门到精通-分组统计查询
  19. 入门级 - 码云(Gitee),GitHub 教程
  20. 矩阵&amp;行列式

热门文章

  1. Java之浅拷贝和深拷贝
  2. PAT L2-016. 愿天下有情人都是失散多年的兄妹 (BFS)
  3. Bootstrap 中的 aria-label 和 aria-labelledby
  4. canvas实现简易时钟效果
  5. java之 javassist简单使用
  6. map &amp; forEach
  7. Differences between Stack and Heap
  8. JQuery:JQuery基本语法,JQuery选择器,JQuery DOM,综合案例 复选框,综合案例 随机图片
  9. Dubbo与Zookeeper开发
  10. 第35天学习打卡(输入框 TextField监听 简易计算器,组合+内部类回顾复习 画笔 鼠标监听 窗口监听 键盘监听)