From 61e0bd568b64e301ba3a01282f4e9b3036a056d7 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Sat, 21 Jan 2012 13:04:45 +0100 Subject: [PATCH] Modifications after review --- akka-actor/src/main/scala/akka/dispatch/Mailbox.scala | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala index e0bda0c41e..4c180861af 100644 --- a/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala +++ b/akka-actor/src/main/scala/akka/dispatch/Mailbox.scala @@ -174,15 +174,15 @@ private[akka] abstract class Mailbox(val actor: ActorCell) extends MessageQueue * Process the messages in the mailbox */ @tailrec private final def processMailbox( - left: Int = java.lang.Math.min(dispatcher.throughput, 1), - deadlineNs: Long = if (dispatcher.isThroughputDeadlineTimeDefined) System.nanoTime + dispatcher.throughputDeadlineTime.toNanos else 0l): Unit = + left: Int = java.lang.Math.max(dispatcher.throughput, 1), + deadlineNs: Long = if (dispatcher.isThroughputDeadlineTimeDefined) System.nanoTime + dispatcher.throughputDeadlineTime.toNanos else 0L): Unit = if (shouldProcessMessage) { val next = dequeue() if (next ne null) { if (Mailbox.debug) println(actor.self + " processing message " + next) actor invoke next processAllSystemMessages() - if ((left > 1) && (!dispatcher.isThroughputDeadlineTimeDefined || System.nanoTime < deadlineNs)) + if ((left > 1) && ((!dispatcher.isThroughputDeadlineTimeDefined) || (System.nanoTime - deadlineNs) < 0)) processMailbox(left - 1, deadlineNs) } }