Servus,
mit "synchronized" stehe ich irgendwie auf Kriegsfuß, es funktioniert nie so, wie ich es will.
Wenn ich die folgenden drei Methoden habe (die alle synchronized sind):
Kann es dann trotzdem zu einer ConcurrentModificationException in der sendMessage() geben? Eigentlich nicht, oder? Weil bei mir trat vorhin ein paarmal eine auf (leider nur selten). Aber ich hab keine Ahnung, wie ich es umschreiben müßte, damit es endlich funktioniert ???:L
mit "synchronized" stehe ich irgendwie auf Kriegsfuß, es funktioniert nie so, wie ich es will.
Wenn ich die folgenden drei Methoden habe (die alle synchronized sind):
Code:
public synchronized void addTaskListener(TaskListener l)
{
_taskListeners.add(l);
}
public synchronized void removeTaskListener(TaskListener l)
{
_taskListeners.remove(l);
}
protected synchronized void sendMessage(TaskMessage msg)
{
for(TaskListener l : _taskListeners)
l.eventOccured(msg, this);
}
Kann es dann trotzdem zu einer ConcurrentModificationException in der sendMessage() geben? Eigentlich nicht, oder? Weil bei mir trat vorhin ein paarmal eine auf (leider nur selten). Aber ich hab keine Ahnung, wie ich es umschreiben müßte, damit es endlich funktioniert ???:L