=str small improvement in GraphInterpreter.currentInterpreter
This commit is contained in:
parent
e50a5ee6fc
commit
f85ffb575c
1 changed files with 4 additions and 9 deletions
|
|
@ -248,12 +248,6 @@ private[stream] object GraphInterpreter {
|
|||
private[stream] def currentInterpreterOrNull: GraphInterpreter =
|
||||
_currentInterpreter.get()(0).asInstanceOf[GraphInterpreter]
|
||||
|
||||
/**
|
||||
* INTERNAL API
|
||||
*/
|
||||
private[stream] def setCurrentInterpreter(gi: GraphInterpreter) =
|
||||
_currentInterpreter.get()(0) = gi
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -502,8 +496,9 @@ private[stream] final class GraphInterpreter(
|
|||
*/
|
||||
def execute(eventLimit: Int): Unit = {
|
||||
if (Debug) println(s"$Name ---------------- EXECUTE (running=$runningStages, shutdown=${shutdownCounter.mkString(",")})")
|
||||
val previousInterpreter = currentInterpreterOrNull
|
||||
setCurrentInterpreter(this)
|
||||
val currentInterpreterHolder = _currentInterpreter.get()
|
||||
val previousInterpreter = currentInterpreterHolder(0)
|
||||
currentInterpreterHolder(0) = this
|
||||
try {
|
||||
var eventsRemaining = eventLimit
|
||||
while (eventsRemaining > 0 && queueTail != queueHead) {
|
||||
|
|
@ -518,7 +513,7 @@ private[stream] final class GraphInterpreter(
|
|||
eventsRemaining -= 1
|
||||
}
|
||||
} finally {
|
||||
setCurrentInterpreter(previousInterpreter)
|
||||
currentInterpreterHolder(0) = previousInterpreter
|
||||
}
|
||||
if (Debug) println(s"$Name ---------------- $queueStatus (running=$runningStages, shutdown=${shutdownCounter.mkString(",")})")
|
||||
// TODO: deadlock detection
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue