zoukankan      html  css  js  c++  java
  • 一个Assert引发的血案

         今天在做东东时发现一个非常古怪的问题一开始以为是内存覆写,因为某个数据会变成一个莫名奇妙的值,后来锁定可能改变这个值得函数以后发现更加是莫名奇妙,因为从逻辑上来说除非发生多线程访问否则不会被修改。但是目前又还没有采用多线程,后来发现原来是Assert函数导致因为在自己理解中Assert发生后应该阻塞在这里,但是后来看了调试堆栈后发现Windows的消息循环再弹出Assert后会继续运行,而第2个函数偏偏又是在这时候读取这个数据的值,而这个时候由于第一个函数在Assert中还没返回没有将该数值置回初始值所以第2个函数读到的是一个脏的数据。。。汗=.=不知道有没有让Assert直接中断而不要再运行消息循环的方法。顺便发一下初步的编辑器Ui嘿嘿比公司的那个明显要好看多了。

  • 相关阅读:
    JSP中<base href="<%=basePath%>">作用
    转 jdk1.5新特性 ConcurrentHashMap
    单例设计模式与类加载顺序详解
    归并排序-java
    插入排序-java
    冒泡排序-java
    选择排序-java
    JS的object数据类型
    JS的事件
    JS的捕捉回车键
  • 原文地址:https://www.cnblogs.com/fishboy82/p/1373552.html
Copyright © 2011-2022 走看看