fixed bug in dispatcher
This commit is contained in:
parent
6ab4b48166
commit
3de15e3590
1 changed files with 3 additions and 5 deletions
|
|
@ -65,11 +65,9 @@ class ExecutorBasedEventDrivenDispatcher(_name: String) extends MessageDispatche
|
|||
def run = {
|
||||
val mailbox = invocation.receiver._mailbox
|
||||
mailbox.synchronized {
|
||||
val messages = mailbox.iterator
|
||||
while (messages.hasNext) {
|
||||
messages.next.invoke
|
||||
messages.remove
|
||||
}
|
||||
val messages = mailbox.toArray
|
||||
messages.foreach(message => message.asInstanceOf[MessageInvocation].invoke)
|
||||
mailbox.clear
|
||||
invocation.receiver._suspend
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue