Обычно с Seaside вам никогда не приходится иметь дело с Continuations самостоятельно.
Вы просто используете #call:
и #answer:
внутри своих компонентов.
Если вы пытаетесь сделать что-то еще с Continuation
, кроме написания приложения Seaside, посмотрите на WAComponent>>call:
пример использования.
Или попробуйте это. Откройте окно Transcript. Теперь, в рабочей области, выделите весь этот код сразу и сделайте это:
continuation := nil.
result := Continuation currentDo: [:cc |
"store the continuation, cc, somewhere for later use"
continuation := cc.
1 ].
Transcript show: result.
Вы должны увидеть 1
, отображаемое в окне Transcript. Теперь в рабочей области выполните:
continuation value: 2
, а затем:
continuation value: 3
Вы должны видеть, что каждое значение, которое вы передаете continuation
, отображается в Transcript, потому что каждое значение, которое вы передаете #value: вызывает восстановление контекста продолжения и новое значение, присвоенное result
.
Надеюсь, это поможет ...