mirror of
https://github.com/Qortal/altcoinj.git
synced 2025-02-13 10:45:51 +00:00
Synchronize on event listeners in EventListenerInvoker.
This commit is contained in:
parent
001afa9ae2
commit
b25446271a
@ -39,13 +39,15 @@ public abstract class EventListenerInvoker<E> {
|
|||||||
|
|
||||||
public static <E> void invoke(List<E> listeners,
|
public static <E> void invoke(List<E> listeners,
|
||||||
EventListenerInvoker<E> invoker) {
|
EventListenerInvoker<E> invoker) {
|
||||||
for (int i = 0; i < listeners.size(); i++) {
|
synchronized (listeners) {
|
||||||
E l = listeners.get(i);
|
for (int i = 0; i < listeners.size(); i++) {
|
||||||
synchronized (l) {
|
E l = listeners.get(i);
|
||||||
invoker.invoke(l);
|
synchronized (l) {
|
||||||
}
|
invoker.invoke(l);
|
||||||
if (listeners.get(i) != l) {
|
}
|
||||||
i--; // Listener removed itself.
|
if (listeners.get(i) != l) {
|
||||||
|
i--; // Listener removed itself.
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user