nested CPS "reset"
using the CPS compiler-p开发者_运维知识库lugin of Scala 2.8, there are the two magic controls reset
and shift
. Reset delimits the continuation and shift captures the continuation.
There is an example of using CPS with NIO, using nested resets as a type of "forking"...? I don't exactly understand the purpose of nesting the resets, what's the effect?
There's nothing magic about nested a reset
. A shift
applies to the innermost reset
that encloses it. The pseudo-forking comment you see is just a description of the effective behavior from the callbacks registered with the NIO selector.
精彩评论