Torsten Curdt wrote:
The execution state of a continuation is dependent on it's parent state.
This is true for differential continuation where the lexical information is split across the child axis. (Which is currently not the case for javaflow)
So although we may trash parent webcontinuations (i.e. the enveloppe used by the continuation manager), we must ensure that a strong link exists with the parent state.
Right - in case only the modifications are kept in a continuation the continuation tree must be kept complete all the time!
Invalidation would then need to be a flag that needs to be checked by interpreter or we remove the envelope object and keep only the parent axis of the actual continuations.
summing up: we have to keep whole continuation tree, right?
No, I don't think so but it doesn't help much if you delete some of the continuations of a tree because a continuation object doesn't need much memory.
The problem is all objects that are references from within a continutions tree because only when the last! continuation of a tree is invalidated, all referenced objects can be removed by the garbage collector. This means that you have to be very careful with local! variables.
--
Reinhard P�tz Independent Consultant, Trainer & (IT)-Coach
{Software Engineering, Open Source, Web Applications, Apache Cocoon}web(log): http://www.poetz.cc --------------------------------------------------------------------
