2013/2/13 Jody Garnett <[email protected]> > > Just a report back from IRC land (with moovida and mauro). > > Frank your "rollback" of blackboard synchronisation locking has removed the > deadlock. > > Thinking about it for a bit: > a) your change is nice and clear (I see you experimented with different locks)
As a first try I used a standard lock but after your code review we decided to use ReentrantLock like all other class that uses locks. > > b) what we missed was consider thread locking used by tools - as depending on > which order they access the blackboard they could (and did) manage to > deadlock themselves > > > I also checked the use of "EditFeature" which was the change I suspected of > causing issues. Turns out it is not used by edit tools at all and can be > ruled out as a cause of trouble. > I haven't reviewed the EditManagerImpl and associated classes in terms of threading issues. And, sorry for that, I haven't tested walktrough 2 before committing my changes .. However, I guess its worth to work with fair locks, let me try my changes with an additional fair=true constructor parameter for ReentrantLock Frank > > -- > Jody Garnett > > > _______________________________________________ > User-friendly Desktop Internet GIS (uDig) > http://udig.refractions.net > http://lists.refractions.net/mailman/listinfo/udig-devel > _______________________________________________ User-friendly Desktop Internet GIS (uDig) http://udig.refractions.net http://lists.refractions.net/mailman/listinfo/udig-devel
