"LapplyExecutionState"
"envRefClass"
. sequenceNos
:Apply
sequence number where parallelization starts and stops is stored together with nesting depth. This allows the Apply
functions to switch to proper states. Each object on this stack represents a range of Apply
calls. rampUp
:freezerClass
:freezers
:setFreezers(value)
:freezers
slot. getFreezers()
:freezers
slot. setFreezerClass(value)
:freezerClass
slot.getFreezerClass()
:freezerClass
slot. setRampUp(value)
:rampUp
slot. getRampUp()
:rampUp
slot. setSequenceNos(value)
:sequenceNos
slot. getSequenceNos()
:sequenceNos
slot. currentFreezer()
:adjustCursor(state)
:isLastRampUp()
:skipToRampDown(state)
:state
? checkAgainstState(state)
:state
located in the top-most range of the sequenceNos
stack.rampUpForeFront()
:resetCursor()
:rampUp
to one. This prepares for a re-execution of the function. incCursor()
:currentSentinel()
:sequencNos
stack. pushSequenceForRampUp(sequenceNo, depth)
:Apply
call at sequence number sequenceNo
and depth depth
. The method automatically updates the sequenceNos
stack to record Apply
calls with maximal depth and accumulates calls at equal depth into a start/stop range. addSentinel()
:sequenceNos
stack. initialize(freezerClass, ...)
:LapplyFreezer-class
, LapplyState-class
showClass("LapplyExecutionState")
Run the code above in your browser using DataLab