小编Bob*_*her的帖子

并发-数据库访问

我需要处理检索挂起的记录,并将它们更新为工作单元的“处理中”状态。我想确保下面的代码支持并发,其他线程要等到我当前的线程处理完毕。实现此目标的最佳方法是什么?

public Collection<Object> processPendingMessages() {
    Collection<Object> messages = null;
    //Retrieve pending messages
    messages = messageDAO.getPendingMessages(Direction.INBOUND);
    //Update pending messages to Inprocess
    if (messages!=null && messages.size()>0) {
        messageDAO.updateMessagesToInprocess(messages); 
    } 
    return messages;
}
Run Code Online (Sandbox Code Playgroud)

非常感谢您的投入。谢谢。

java concurrency thread-safety java.util.concurrent

1
推荐指数
1
解决办法
3176
查看次数