futureTask使用[通俗易懂]

futureTask使用[通俗易懂]List<FutureTask>taskList=newArrayList<>();if(leaderList!=null&&!leaderList.isEmpty()){leaderList.forEach(userId->{…

大家好,又见面了,我是你们的朋友全栈君。

   List<FutureTask> taskList = new ArrayList<>();
            if (leaderList != null && !leaderList.isEmpty()) {
                leaderList.forEach(userId -> {
                    FutureTask future = new FutureTask(() -> {
                        UserInfoVO userInfoVO = vipCenterService.getUserInfoById(userId);
                        if (userInfoVO != null) {
                            req.setUserId(userId);
                            AprilLeaderPrizeDto aprilLeaderPrizeDto = iAprilLeaderPrizeService.querySometimeleaderPricze(req);
                            String phoneNuber = userInfoVO.getPhoneNumber();
                            count.addAndGet(1);
                            String message = mrytConfig.getConfig("");
                            if (StringUtil.isNotBlank(message)) {
                                message = String.format(message, month, month, day, aprilLeaderPrizeDto.getLastTotalMoney(), aprilLeaderPrizeDto.getLastAllvipNumber());
                                activityUtil.sendSms(phoneNuber,message, MessageSignEnum.sign_sxws);
                            }
                            logger.info("SendSaleMessageToLeaderJob---2---phoneNuber:{},message:{},count:{}", phoneNuber, message, count);
                        }
                        return null;
                    });
                    service.submit(future);
                    taskList.add(future);
                });
                for (FutureTask task : taskList) {
                    try {
                        task.get();
                    } catch (Exception e) {
                        logger.error("SendSaleMessageToLeaderJob并行执行报错-{}", e);
                    }
                }
                logger.info("SendSaleMessageToLeaderJob执行结束cost:{}ms,count:{}", System.currentTimeMillis() - start, count);
            }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147941.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月15日 下午12:36
下一篇 2022年6月15日 下午12:46


相关推荐

  • python中griddata_python – 来自xyz数据的Matplotlib轮廓:griddata无效索引[通俗易懂]

    python中griddata_python – 来自xyz数据的Matplotlib轮廓:griddata无效索引[通俗易懂]我正在尝试使用具有以下格式的文件的matplotlib来绘制等高线图:x1y1z1x2y2z2等等我可以用numpy.loadtxt加载它来获取向量.到目前为止,没有麻烦.我读这个是为了学习如何绘图,并且可以通过复制粘贴来重现它,所以我确定我的安装没有错:我知道我必须输入x和y作为矢量,z作为数组输入,这可以用griddata完成.这也是我在这个网站上找到的.文件说:zi=gridda…

    2022年5月26日
    41
  • tomcat出现乱码怎么办_tomcat输出日志乱码

    tomcat出现乱码怎么办_tomcat输出日志乱码1.打开tomcat如下位置:找到logging-properties文件,选择用代码编辑器打开(我这里选择用idea)2.在25-47行中把五个红框起来的UTF-8改为GB2312此时点击bin,目录下的startup.bat(window用户)或startup.sh(mac用户)启动tomcat,控制台的乱码问题解决。如果此时还没有解决乱码问题,需要1.windows+R打开运行,在运行框中输入regedit,进入注册表编辑器中2.如果没有Tomcat或者CodePag(1)

    2026年4月13日
    6
  • pyqt5 pycharm配置_pycharm安装pyqt5

    pyqt5 pycharm配置_pycharm安装pyqt5安装Python+PyCharm+PyQt51、安装Python访问官网https://www.python.org/,下载最新版本的Python来安装。我这里下了python3.92、安装PyCharm1)下载PyCharm,官网https://www.jetbrains.com/pycharm/download/#section=windows下载Community版本的2)汉化Pycharm:https://blog.csdn.net/qqwangfan…

    2022年8月27日
    12
  • mysql将字符转换成数字

    mysql将字符转换成数字在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下:1.将字符的数字转成数字,比如’0’转成0可以直接用加法来实现例如:将pony表中的d进行排序,可d的定义为varchar,可以这样解决select*fromponyorderby(d+0)2.在进行ifnull处理时,比如ifnull(a/b,’0

    2022年5月29日
    51
  • 可能是目前效果最好的开源生图模型,混元生图3.0来了

    可能是目前效果最好的开源生图模型,混元生图3.0来了

    2026年3月13日
    1
  • 2进制 , 8进制 , 10进制 , 16进制 , 介绍 及 相互转换 及 快速转换的方法

    2进制 , 8进制 , 10进制 , 16进制 , 介绍 及 相互转换 及 快速转换的方法为什么要使用进制数数据在计算机中的表示 最终以二进制的形式存在 就是各种 lt 黑客帝国 gt 电影中那些 0 的数字 我们操作计算机 实际就是使用程序和软件在计算机上各种读写数据 如果我们直接操作二进制的话 面对这么长的数进行思考或操作 没有人会喜欢 C C 语言没有提供在代码直接写二进制数的方法 用 16 进制或 8 进制可以

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号