Hi Sascha, Your understanding of async is correct but finish is not implemented this way. The activity blocked on a finish is not pushed on the queue. The queues always contain activities that have not started yet, never suspended activity.
When an activity blocks on a finish, it calls Runtime.worker().join. This methods executes asyncs in the worker queue until the finish gets unblocked. If there is no activity left but the finish is still blocked, for instance waiting on a remote activity, the runtime parks the thread until the finish is unblocked. I hope this helps. You may find a more extensive discussion of this mechanism in this paper (Section 5.2): http://dist.codehaus.org/x10/documentation/papers/X10Workshop2011/X10PerformanceModel.pdf Olivier Sascha Roloff <sascha.rol...@googlemail.com> wrote on 08/22/2011 12:08:31 PM: > From: Sascha Roloff <sascha.rol...@googlemail.com> > To: Mailing list for users of the X10 programming language <x10- > us...@lists.sourceforge.net> > Date: 08/22/2011 12:10 PM > Subject: [X10-users] X10 Runtime in X10 > > Dear list, > > I have a question regarding the implementation of the X10 runtime system > written in X10. > I guess, this is implemented in the class Runtime.x10. When I create an > activity with "async", > this activity is pushed onto the queue of a worker thread. Basically, this > is done in the method > call Runtime.execute(), right? The activities in the queue are executed one > after another, without > interrupting the activities. When I use a "finish" statement, then the > executing activity is suspended > until all internally created activities are finished. That means, that the > activity is dequed from the queue > and again enqueued at the end of the queue. My question now is, which method > call of the runtime does > this dequeing and enqueing of activities from and into the queue? I hope, my > question is understandable. > > Kind regards, > Sascha > ------------------------------------------------------------------------------ > uberSVN's rich system and user administration capabilities and model > configuration take the hassle out of deploying and managing Subversion and > the tools developers use with it. Learn more about uberSVN and get a free > download at: http://p.sf.net/sfu/wandisco-dev2dev > _______________________________________________ > X10-users mailing list > X10-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/x10-users ------------------------------------------------------------------------------ uberSVN's rich system and user administration capabilities and model configuration take the hassle out of deploying and managing Subversion and the tools developers use with it. Learn more about uberSVN and get a free download at: http://p.sf.net/sfu/wandisco-dev2dev _______________________________________________ X10-users mailing list X10-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/x10-users