Support for ASM 3.2 / 3.3 and in/out continuations parameters
-------------------------------------------------------------
Key: SANDBOX-323
URL: https://issues.apache.org/jira/browse/SANDBOX-323
Project: Commons Sandbox
Issue Type: Improvement
Components: Javaflow
Affects Versions: Nightly Builds
Environment: SUN JDK 1.6
Reporter: Valery Silaev
Fix For: Nightly Builds
Attachments: javaflow_modified.zip
1. Currently JavaFlow can be used with new ASM builds due to incompatible
changes introduced in ASM 3.2, the patch provided adds support for ASM 3.2 /
3.3, so JavaFlow may be used with any ASM 3.x version
2. There is no API to return result from suspended continuation, ad-hoc custom
logic with ThreadLocal variables is necessary for this. The patch contains API
changes to allow this.
// In continuation
final Object varReceivedByContinuation =
Continuation.suspend(varPassedByContinuation);
// In calling client
final Continuation cc = Continuation.startWith(code);
System.out.println(cc.value()); // value() is yielded by continuation
In certain sense this works as "yield" operator found in other programming
languages, and has even richer semantics.
3. Miscellaneous: continuation-specific Iterable/Iterator are provided with
patch as well to simplify iteration over multiple values yielded by
continuation code; they are named CoRoutine / CoIterator in code.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.