佛系更新

CodeBear的园子

分享低端知识

12 2018 档案

摘要:上一篇中,我们了解了Synchronized关键字,知道了它的基本使用方法,它的同步特性,知道了它与Java内存模型的关系,也明白了Synchronized可以保证“原子性”,“可见性”,“有序性”。今天我们来看看另外一个关键字Volatile,这也是极其重要的关键字之一。毫不夸张的说,面试的时候谈 阅读全文
posted @ 2018-12-27 16:34 CodeBear 阅读(651) 评论(1) 推荐(3) 编辑
摘要:在上一篇博客中,我“蜻蜓点水”般的介绍了下Java内存模型,在这一篇博客,我将带着大家看下Synchronized关键字的那些事,其实把Synchronized关键字放到上一篇博客中去介绍,也是符合 “Java内存模型”这个标题的,因为Synchronized关键字和Java内存模型有着密不可分的关 阅读全文
posted @ 2018-12-24 09:02 CodeBear 阅读(1357) 评论(3) 推荐(5) 编辑
摘要:Java内存模型虽说是一个老生常谈的问题 ,也是大厂面试中绕不过的,甚至初级面试也会问到。但是真正要理解起来,还是相当困难,主要这个东西看不见,摸不着。网上已经有大量的博客,但是人家的终究是人家的,自己也要好好的去理解,去消化。今天我也来班门弄斧,说下Java内存模型。 说到Java内存模型,不得不 阅读全文
posted @ 2018-12-16 23:31 CodeBear 阅读(1210) 评论(2) 推荐(3) 编辑
摘要:参考:https://www.iteye.com/topic/1122740 上一节,主要分析了 被标记为事务的方法互相调用,事务失效的原因,思考比较多,这一节主要说说解决方案,思考会少一些。 ####解决方案的核心: 通过代理对象去调用方法 1.把方法放到不同的类: 我们需要新建一个接口: pub 阅读全文
posted @ 2018-12-12 21:07 CodeBear 阅读(877) 评论(0) 推荐(1) 编辑
摘要:相信大家一定用过Spring中的注解型事务,配合上Spring Boot,只需要在方法上打一个@Transactional 就可以完成,真香。 但是如果大家对其中的机制一知半解的话,可能一不小心就会掉进坑,然后久久无法爬出来。 下面我就分享下 被标记为事务的方法互相调用的坑。 首先我写两个事务方法: 阅读全文
posted @ 2018-12-07 15:10 CodeBear 阅读(1124) 评论(0) 推荐(3) 编辑
摘要:上篇文章介绍了使用Redis来实现延时任务,这是一个比较好的方案,但是这种方式是把Redis作为消息队列去使用,而Redis作为消息队列还是有一些缺点的: 1. Redis本身没有提供监控、管理界面,需要自己去实现。我们无法方便的知道现在队列的情况,比如是否有积压,消费情况是如何的,生产情况又是如何 阅读全文
posted @ 2018-12-03 09:42 CodeBear 阅读(761) 评论(0) 推荐(2) 编辑

点击右上角即可分享
微信分享提示