小编vir*_*wal的帖子

在Java中以不同的线程运行后台进程

我正在编写一个应用程序,用户可以添加和删除其他用户作为朋友.我的页面有一个不同用户列表,每个用户都有一个按钮,可以将它们添加到好友列表中.我正在向Java servlet发送一个AJAX请求,以将所选用户添加为朋友.我在UI上显示警告消息以显示进程的结果.

我的问题是当用户被添加为朋友时我必须发送邮件这个代码是用servlet中的相同方法编写的.

由于这段代码我的警报信息来得很晚.

我需要运行一个单独的pthread来运行这个发送邮件功能,这样一旦添加了用户,我将得到结果,邮件将在单独的进程中发送.

我在Servlet中的代码是

private void sendMail(long inviteeID) {
    User inviteeUser = null;
    try {
        inviteeUser = userHandler.getUser(inviteeID);
    } catch (DataException e) {
        sLog.error("User does not exist.", e);
    } catch (UserNotFoundException e) {
        sLog.error("User does not exist.", e);
    }
    MailUtility.send(inviteeUser.getUserEmailAddress().trim(),
            "vagarwal@q3tech.com", "add friend message", Utility
                    .getAddFriendMessageBody(LoginHelper
                            .getLoggedInUserEmail()), false);
}



private String inviteAsFriend(long inviteeID) {

    boolean result = false;

    if (LoginHelper.isUserLoggedIn()) {
        try {
            User user = userHandler.findUserByEmail(LoginHelper
                    .getLoggedInUserEmail());

            if (userHandler.isUserFriend(user.getUserId(), inviteeID)) {

                if (userHandler.addFriend(user, inviteeID)) {

                    result = …
Run Code Online (Sandbox Code Playgroud)

java multithreading

9
推荐指数
4
解决办法
2万
查看次数

标签 统计

java ×1

multithreading ×1