jdk8 bug实锤

       jdk8 多数据源迭代器的bug

       目前公司使用的是jdk8,用jdk8肯定的用他的新特性,比如说到的集合迭代器配合Lambda表达式迭代集合。效率基本跟之前的for没有什么区别。

那么在最近使用jdk8集合的默认迭代器的时候,多数据源的场景出现了一个非常有意思的问题,我先贴代码,然后说明我提出的bug供大家探讨。

定时任务核心代码如下:

简单的解释一下业务逻辑,

各位看代码有什么问题没有?我估计也一下子看不出什么问题吧

简单的说一下bug

冻结表

账户表

 

这两条数据是我需要解冻的,也即是操作3需要执行的,当定时任务执行完之后解冻表中的状态改了,但是余额却没有增加

如下:

定时任务执行结果机后台日志没有报错

当换成for语句迭代,则没有类似的事情发生了

这个就是在使用jdk8的时候出现的bug,一个很简单的多数据源协作处理引发的问题,大家可以测试一下。

如果有兴趣的人可以去简单的模拟一下此场景。公司的小程序目前已经上线了,整个后端架构都是我来设计的,大家来体验一下。

您可以作为boss去发放offer(工作),也可以作为工作者去竞标其他boss发放的offer。

小程序:

公众号:

谢谢大家的支持

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值