提交 b4bb963e 编写于 作者: S Stephen Connolly

Move SaveableListener notification outside of the lock

上级 5a1999ea
......@@ -463,6 +463,7 @@ public class Queue extends ResourceController implements Saveable {
public void save() {
if(BulkChange.contains(this)) return;
XmlFile queueFile = new XmlFile(XSTREAM, getXMLQueueFile());
lock.lock();
try {
// write out the queue state we want to save
......@@ -472,19 +473,18 @@ public class Queue extends ResourceController implements Saveable {
// write out the tasks on the queue
for (Item item: getItems()) {
if(item.task instanceof TransientTask) continue;
state.items.add(item);
state.items.add(item);
}
try {
XmlFile queueFile = new XmlFile(XSTREAM, getXMLQueueFile());
queueFile.write(state);
SaveableListener.fireOnChange(this, queueFile);
} catch (IOException e) {
LOGGER.log(Level.WARNING, "Failed to write out the queue file " + getXMLQueueFile(), e);
}
} finally {
lock.unlock();
}
SaveableListener.fireOnChange(this, queueFile);
}
/**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册