Primero de todo te contestare a tu pregunta. Para obtener mutiples hilos, en las propiedades del proyecto, en el apartado de subprocesos tienens que indicar subprocesos independientes i un subproceso por objeto. Aparte, el componente tiene que ser un ActiveX EXE o DLL y la clase afectada tiene que estar como multiuso global.
Pero por muchos hilos que generes, si haces la busqueda en un ordenador uniprocesador no te servira de mucho ya que solo tienes un solo procesador para los calculos.
Yo me encontre con un problema similar, una consulta larguisima y enorme, para solucionarlo al obtener los datos usaba:
SELECT TOP [Numero registros] Campo1,...Campo n FROM Tabla WHERE ...
Esto es muy rapido y lo aceptan muchas bases de datos, si el usuario quiere ver mas datos aumento el numero de registros a obtener.
Espero haberte ayudado. Saludos.