Jean Morissette wrote:
Hi developers,
   I'm the lead developer of the JCyclone project
http://jcyclone.sourceforge.net/ and I'm very interested by Java
continuation.  I want to use continuations in JCyclone as logical
threads and create a fine-grained predictable thread scheduler.  You
may want to take a look in our CVS to see our continuation
implementation prototype, under the sandbox directory.

Hi! I'm one of the developers of the project.

Is there some limitations of your implementation?  By exemple, do you
instrument synchronized statements?  I was thinking to just replace
them with ReentrantReadWriteLock. Also, there can be some issues with
finally statements; do you handle them?

Yes, there are a few issues. For example, monitors acquired through 'monitorenter' instruction isn't released when the stack capture happens, causing IllegalMonitorStateException.

Finally block has a similar problem. We've been thinking about just inlining JSR/RET blocks to avoid the problem altogether.

I would be interested to give my contribution in your project. Please, let me know if I can help.

Thanks for the offer. I attached the TODO file for your consideration. We've been using BCEL for the instrumentation, but trying to migrate to ASM now (I think BCEL version is still more stable, but that's where we could use some help.) I think ASM has a better dataflow analysis package, which hopefully would let us attack the abovementioned instrumentation problems.


--
Kohsuke Kawaguchi
Sun Microsystems                   [EMAIL PROTECTED]
In no particular order:

o integrate just4log into the build system
o testcases!!!!
o documentation of the rewriting process
o fix rewriting bugs/limitations:
  o fix unintialized objects for method/constructor calls
  o inner classes
  o try/catch/finally
  o synchronized(obj)
  o accessing .class
  o new Object() without assignment
o only wrap the function calls
  that may lead to a suspend (control
  flow analysis) requires 2-pass
  analysing/rewriting
o maybe: evaluate making the Stack class use a hierarchical
  approach to support differential continuations
o maybe: asm implementation instead of BCEL

o BCEL
  o commit bug fixes in BCEL

   http://issues.apache.org/bugzilla/show_bug.cgi?id=27646
   http://issues.apache.org/bugzilla/show_bug.cgi?id=27854
   http://issues.apache.org/bugzilla/show_bug.cgi?id=27855

  o get rid of the static repository approach
   http://issues.apache.org/bugzilla/show_bug.cgi?id=38057

o talk to the RIFE guys about joining forces
o talk to the aspectwerkz and aspectj folks
  about working together

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to