public BaseApproach(int autoCompleteAfterNChars, StandardEvalOutput evalOutput, PrefixProfile queryPrefixProfile)
{
_autoCompleteAfterNChars = autoCompleteAfterNChars;
_evalOutput = evalOutput;
_queryPrefixProfile = queryPrefixProfile;
_evalThreadPool = new SmartThreadPool(1000, 6);
_evalThreadPool.Start(); // Setup and start the threadpool
}