您的位置:首页 > 产品设计 > UI/UE

Java 多线程 BlockingQueue 实现 高并发邮件 代码 SystemEmailSender

2014-10-27 16:00 507 查看
package com.pingan.emall.biz.util;

import com.paic.pafa.app.lwc.core.util.DevLog;

public class SystemEmailSender extends Thread {

private boolean running = true;
private SystemEmailBlockingQueue queue;

public SystemEmailSender(SystemEmailBlockingQueue queue) {
this.queue = queue;
}

@Override
public void run() {
while (running) {
try {
MailBean mail = queue.poll();

boolean succeed = SystemEmailUtils.sendMail(mail);
queue.retry(mail,  succeed);
} catch (ThreadDeath e) {
DevLog.error("Thread dead in send mail thread", e);
break;
}
}
}

public void setRunning(boolean running) {
this.running = running;
}

@Override
public void destroy() {
DevLog.info("System mail send thread destroyed");
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 线程安全
相关文章推荐