The simultaneous operations exception happens when you try to create a DocumentIndex object while the index directory is locked (has a lock file in it).
So that might happen for example if you have two threads that create DocumentIndex, or 2 totally different processes that are doing this.
Another way is if you do this
i = New DocumentIndex(c)
'....
i = New DocumentIndex(c)
without calling DocumentIndex.Close, eg. you would fix that like
i = New DocumentIndex(c)
'....
i.Close()
i = New DocumentIndex(c)
-your feedback is helpful to other users, thank you!