From: Alexey Petrushin Date: 2008-04-16T21:41:17+09:00 Subject: Continuation in web (Seaside clone) Hello! IN SHORT (by some example): There is a web application, and two 'pages' - 'View' and 'Editor'. And when i press 'Edit' button on the 'View' it should: - Freeze current execution (callcc {bla-bla}) - Give control to 'Editor' - User fill data in 'Editor' - 'Editor' return entered data and control back to 'List' (continuation.call data) - Friezed execution resumes THE PROBLEM: I implement this the same way as in Seaside, and it seems to should works, but it throws: "Caught RuntimeError: continuation called across threads" Probably, because WebServer runs each request in a new thread. Do you hawe any idea how this can be solved? Thanks! DETAILS: In pseudo code: class Editor < Form def initialize data = TextField.new self, '' FormButton.new(self, 'Save') {answer data.text} end end class View < Panel def initialize editor view= Label.new self, 'Some initial value ...' Button.new(self, 'Edit') {view.text = call(editor)} end end class MySuperApp < Panel def initialize View.new(self, Editor.new) end end -- Posted via http://www.ruby-forum.com/.