模拟微信领红包操作,并发性如何处理?

这是我的操作逻辑;

我在判断还有剩余红包后(cache_remain_size>0),马上进行了cache_remain_size--;操作,
会出现以下问题:
A用户获取cache_remain_size = 1,之后进行cache_remain_size--;cache_remain_size就变为0;
B用户获取cache_remain_size = 0,就不可领去红包。但是如果A用户之后领取红包失败,cache_remain_size++;cache_remain_size又变为1,说明红包还有剩余。。。这个就有些矛盾了。如何解决?

请先 登录 后评论
  • 0 关注
  • 0 收藏,3357 浏览
  • nicoke 提出于 2017-09-12 01:16

相似问题