当前位置: 首页 > news >正文

贵港网站制作外贸生意怎么入手

贵港网站制作,外贸生意怎么入手,精准营销理论,怎么进入国外网站java 双重检查锁本文讨论的问题不是新问题#xff0c;但即使是经验丰富的开发人员也仍然很棘手。 单例模式是常见的编程习惯用法。 但是#xff0c;当与多个线程一起使用时#xff0c;必须进行某种类型的同步#xff0c;以免破坏代码。 在相关文章中#xff0c;我们的JCG合… java 双重检查锁 本文讨论的问题不是新问题但即使是经验丰富的开发人员也仍然很棘手。 单例模式是常见的编程习惯用法。 但是当与多个线程一起使用时必须进行某种类型的同步以免破坏代码。 在相关文章中我们的JCG合作伙伴来自The Khangaonkar Report的 Manoj Khangaonkar 详细检查了双重检查的成语以了解其崩溃之处并提出了所有可能的解决方案 免得他说些什么 Java中的双重检查锁定问题已得到充分证明。 但是即使是经验丰富的程序员也可能会过分热衷于尝试优化代码同步从而创建单例并成为陷阱。 考虑代码 public class Sample {private static Sample s null ;public static Sample getSample() {if (s null) {s new Sample() ;}return s ;} } 清单1 此代码不是线程安全的。 如果2个线程t1和t2同时进入getSample方法则它们很可能获得不同的样本实例。 通过将synced关键字添加到getSample方法可以轻松解决此问题。 public class Sample {private static Sample s null ;public static synchronized Sample getSample() {if (s null) {s new Sample() ;}return s ;} } 清单2 现在getSample方法可以正常工作。 在进入getSample方法之前线程t1获得一个锁。 需要进入该方法的任何其他线程t2将阻塞直到t1退出该方法并释放锁为止。 代码有效。 生活很好。 这是精明的程序员在不注意的情况下可以超越自己的地方。 他将注意到实际上仅对创建实例的getSample的第一次调用需要进行同步而仅返回s的后续调用将付出不必要的代价。 他决定优化代码以 public class Sample {private static Sample s null ;public static Sample getSample() {if (s null) {synchronized(Sample.class) {s new Sample() ;}}return s ;} } 清单3 我们的Java专家很快意识到该代码与清单1所存在的问题相同。 因此他进一步对其进行了微调。 public class Sample {private static Sample s null ;public static Sample getSample() {if (s null) {synchronized(Sample.class) {if (s null) {s new Sample() ;}}}return s ;} } 清单4 通过在同步块中添加额外的检查他确保了只有一个线程将创建该示例的实例。 这是双重检查模式。 我们的专家的朋友一位Java专家好友检查了该代码。 代码已签入产品已发货。 生活好吗 错 假设线程t1进入getSample。 s为空。 它锁了。 在同步块内它检查s是否仍然为null然后执行Sample的构造函数。 在构造函数执行完成之前将t1换出并且t2得到控制。 由于构造函数未完成因此s被部分初始化。 它不为null但具有一些损坏或不完整的值。 当t2进入getSample时它将看到s不为null并返回一个损坏的值。 总之仔细检查模式不起作用。 选项是在清单2所示的方法级别进行同步或者放弃同步并使用一个静态字段如下所示。 public class Sample {private static Sample INSTANCE new Sample();public static Sample getSample() {return INSTANCE ;} } 清单5 好是好人的敌人 拜伦 相关文章 Java最佳实践系列 正确记录应用程序的10个技巧 每个程序员都应该知道的事情 生存在荒野西部开发过程中的9条提示 软件设计法则 JDK中的设计模式 翻译自: https://www.javacodegeeks.com/2011/03/dreaded-double-checked-locking-idiom-in.htmljava 双重检查锁
http://www.zqtcl.cn/news/699688/

相关文章:

  • 做网站用微软雅黑侵权吗wordpress 同类文章
  • 免费下载建设银行官方网站自己做网站犯法吗
  • 手机网站html代码附近做广告牌的店
  • 建设和优化网站的步骤wordpress 模板 含数据库
  • 太原制作网站的工作室wordpress弹幕播放器
  • 英语网站开发菏泽做网站优化的
  • 宜昌建设网站公司做网站语言服务器 空间
  • 湖南做网站价格广州网站建设哪家便宜
  • 建筑工程素材资源网站中山做网站建设联系电话
  • 做网站关键词集团网站群建设方案
  • 网站开发有哪些课程网站开发好要租服务器吗
  • 鲜花店网站建设的规模设想网站之间的差异
  • 网站怎么在百度做推广郑州建网站
  • 机关门户网站建设顺义做网站
  • 网站开发公司东莞环球军事头条
  • 企业网站管理系统添加教程如何用python开发网页
  • 公司网站建设需要资质wordpress admin
  • 万维网网站301重定向怎么做国家城乡建设规划部网站
  • 现在的网站内容区域做多宽俄文网站开发翻译
  • 上海闵行建设局官方网站做电影网站的流程
  • 怎样做水族馆网站wordpress第三方订阅地址
  • 东莞做网站注意事项如何查网站的百度快照
  • 做资源网站需要什么郑州哪有做网站的公司
  • 不属于网站架构开发一个游戏软件多少钱
  • 电子商务网站建设 市场分析广州有哪些做网站专业的公司
  • 广州网站建设南宁厦门城健建设有限公司网站
  • 课程网站开发的研究现状网页设计制作音乐网站
  • 建设工程法律网站网站美工做专题尺寸多少?
  • 甘肃制作网站godaddy wordpress空间
  • 做淘宝客网站要多少钱心理网站模板