/** * 大转盘的抽奖结果 * 根据获得的奖品修改对应的数据 */ Lock reenLock = new ReentrantLock(); @RequestMapping(value = { "/result" }, method = { RequestMethod.POST }) @ResponseBody public Object getResult(HttpServletRequest request,String freeNum,String score, String cardNo,String sn, String source, Integer currentAngle, Integer index, String memberId) { logger.info("获取抽奖结果"); Map<String, Object> object = new HashMap<String, Object>(); reenLock.lock();//获取锁 try { //业务逻辑 object = (Map<String, Object>) weixinActivityService.saveShareResult(getUnionCode(), freeNum, getCurrentShop(request),score, sn, cardNo, source,currentAngle,index, memberId); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { reenLock.unlock();//释放锁 } return object; }
ReentrantLock的简单使用例子(锁不要写到事物里)
最新推荐文章于 2023-05-11 21:59:25 发布