java - 如何快速的处理完100000条记录的队列
PHP中文网
PHP中文网 2017-04-18 10:34:07
[Java讨论组]

比如现在用户表有100000条记录,现在要向这些用户发送邮件,如何快速的使其发送完成.

PHP中文网
PHP中文网

认证0级讲师

全部回复(2)
高洛峰

将所有记录放到 ConcurrentLinkedQueue 中,然后使用多个线程(使用线程池)共享这个 ConcurrentLinkedQueue,每个线程每次从 ConcurrentLinkedQueue 中取出一条记录并发送邮件,直到队列为空 (即 isEmpty() 返回 true)

PHP中文网

我不太明白你的问题,看这个描述,直接开始n个并发的任务就可以了,如果你要发完了做点事情,jdk提供的倒计时器或者栅栏都支持。
还是你考虑的jvm的内存占用,同时1000000万条会搞掉你的内存堆。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号