On 19.01.2011 17:34, Richard Heck wrote:
On 01/19/2011 11:24 AM, Pavel Sanda wrote:
Peter Kümmel wrote:

This solves not the problem you've described because this is more
complicated, but at least the locks are gone.

i was looking at your primal converters patch and came to the conclusion
that the changes which allowed converters varibale to be local inside
buffer could solve rest of the issues.

there are more UI entry points into the converters class but they are all
from main thread. so if we make converter object local inside buffer export
new collisions should not happen. what do you think?


I was wondering myself about the wisdom of a global converter object,
but then worried that the initialization process could get expensive if
we're always doing it in getStatus. But if we always constructed a new
object when we were not in the main thread, then that would be OK, since
the time spent re-initializing won't be significant if it's only during
export.

I don't know if it's worth doing, but I'll mention it anyway: Peter,
could theConverters() be modified to do what I just suggested?

Copying the converters for exporting, and using the reference in getStatus
sounds good. But we do not have to change theConverters for this, an
assignment should be enough.

Rich, you know the Graph code much better than me. Is it possible to have
real const functions to get pathes, or it is necessary to always set
the visited flag in vertices_. Couldn't the calculation be done in one
function call which then would be more expensive as consequence.

If it is possible I would like to add very carefully more const
functionality to the current code.

Peter






Reply via email to