2018年9月17日

Spring XML和Annotation混合配置的时候,XML中Bean名称写错会导致启动异常不打印、死循环

摘要: 今天做Tomcat迁移Spring Boot,遇到一个坑。启动没有错误,CPU特别高 经过把堆栈kill -3 打印出来,发现堆栈特别长(没有死循环),所有的堆栈信息都集中在org.springframework.beans.factory.support.DefaultSingletonBeanR 阅读全文

posted @ 2018-09-17 18:48 让自己行动起来 阅读(221) 评论(0) 推荐(0) 编辑

2018年9月13日

mybatis-spring升级导致的异常

摘要: 按其他项目的搭配mybatis:3.4.5, mybatis-spring 1.3.1依然还是以上的异常 网上找到一个版本对应表格 阅读全文

posted @ 2018-09-13 20:51 让自己行动起来 阅读(2143) 评论(0) 推荐(0) 编辑

2016年8月30日

【转】Understanding and Using rem Units in CSS

摘要: CSS units have been the subject of several articles here on SitePoint (such as A Look at Length Units in CSS, The New CSS3 Relative Font Sizing Units, 阅读全文

posted @ 2016-08-30 07:04 让自己行动起来 阅读(241) 评论(0) 推荐(0) 编辑

【转】解析JDK 7的动态类型语言支持

摘要: http://www.infoq.com/cn/articles/jdk-dynamically-typed-language Java虚拟机的字节码指令集的数量自从Sun公司的第一款Java虚拟机问世至JDK 7来临之前的十余年时间里,一直没有发生任何变化[1]。随着JDK 7的发布,字节码指令集 阅读全文

posted @ 2016-08-30 06:35 让自己行动起来 阅读(2610) 评论(0) 推荐(0) 编辑

【转】深入理解Java内存模型(七)——总结

摘要: 处理器内存模型 顺序一致性内存模型是一个理论参考模型,JMM和处理器内存模型在设计时通常会把顺序一致性内存模型作为参照。JMM和处理器内存模型在设计时会对顺序一致性模型做一些放松,因为如果完全按照顺序一致性模型来实现处理器和JMM,那么很多的处理器和编译器优化都要被禁止,这对执行性能将会有很大的影响 阅读全文

posted @ 2016-08-30 06:34 让自己行动起来 阅读(329) 评论(0) 推荐(0) 编辑

【转】深入理解Java内存模型(六)——final

摘要: 与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问。对于final域,编译器和处理器要遵守两个重排序规则: 下面,我们通过一些示例性的代码来分别说明这两个规则: 这里假设一个线程A执行writer ()方法,随后另一个线程B执行reader ()方法。下面我们通过这两 阅读全文

posted @ 2016-08-30 06:33 让自己行动起来 阅读(228) 评论(0) 推荐(0) 编辑

【转】深入理解Java内存模型(四)——volatile

摘要: volatile的特性 当我们声明共享变量为volatile后,对这个变量的读/写将会很特别。理解volatile特性的一个好方法是:把对volatile变量的单个读/写,看成是使用同一个监视器锁对这些单个读/写操作做了同步。下面我们通过具体的示例来说明,请看下面的示例代码: 假设有多个线程分别调用 阅读全文

posted @ 2016-08-30 06:32 让自己行动起来 阅读(228) 评论(0) 推荐(0) 编辑

【转】深入理解Java内存模型(五)——锁

摘要: 锁的释放-获取建立的happens before 关系 锁是java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息。 下面是锁释放-获取的示例代码: 假设线程A执行writer()方法,随后线程B执行reader()方法。根据happens b 阅读全文

posted @ 2016-08-30 06:30 让自己行动起来 阅读(244) 评论(0) 推荐(0) 编辑

【转】深入理解Java内存模型(三)——顺序一致性

摘要: 数据竞争与顺序一致性保证 当程序未正确同步时,就会存在数据竞争。java内存模型规范对数据竞争的定义如下: 在一个线程中写一个变量, 在另一个线程读同一个变量, 而且写和读没有通过同步来排序。 当代码中包含数据竞争时,程序的执行往往产生违反直觉的结果(前一章的示例正是如此)。如果一个多线程程序能正确 阅读全文

posted @ 2016-08-30 06:26 让自己行动起来 阅读(227) 评论(0) 推荐(0) 编辑

【转】深入理解Java内存模型(二)——重排序

摘要: 数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性。数据依赖分下列三种类型: 上面三种情况,只要重排序两个操作的执行顺序,程序的执行结果将会被改变。 前面提到过,编译器和处理器可能会对操作做重排序。编译器和处理器在重排序时,会遵守数据依赖性,编译 阅读全文

posted @ 2016-08-30 06:24 让自己行动起来 阅读(673) 评论(0) 推荐(0) 编辑

导航