如何快速的处理完100000条记录的队列

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

桃花长相依
浏览 640回答 2
2回答

慕雪6442864

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

哈士奇WWW

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

相关分类

Java