The Outlook object model is not multi-threaded at all. In fact if you call
the OOM on a background thread you will hang or crash Outlook.
There is no way to automatically create an index for an AdvancedSearch,
which is the code equivalent for the Advanced Find method. AdvancedSearch is
asynch, so you can just set an event handler for the AdvancedSearchComplete
event.
If you want faster you'd have to use a different API such as CDO 1.21 or
Extended MAPI (C++ or Delphi code only) or Redemption
(
www.dimastr.com/redemption) and set up a restriction on a search folder,
which is roughly what you're doing when you initiate an AdvancedSearch.