perhaps names and id arrays were a little generic..
each database file loaded modifies existing arrays in the parent thread, and in some cases rebuilding them..
The issue I was running into yesterday was lock (this), but lock (sync) where i define sync = new object(); seems to have gotten me past that hurdle..
Its 9am, time to start at it again and see what kind of results I achieve.
Thanks!