#include "queryconfig.h"

#include <thread>

annis::QueryConfig::QueryConfig()
  : optimize(true), forceFallback(false), avoidNestedBySwitch(true),
    numOfParallelTasks(std::thread::hardware_concurrency()-1)

{

}

#include "queryconfig.h"

#include <thread>

annis::QueryConfig::QueryConfig()
  : optimize(true), forceFallback(false), avoidNestedBySwitch(true),
    numOfParallelTasks(std::thread::hardware_concurrency())

{

}

--- 
+++ 
@@ -4,7 +4,7 @@
 
 annis::QueryConfig::QueryConfig()
   : optimize(true), forceFallback(false), avoidNestedBySwitch(true),
-    numOfParallelTasks(std::thread::hardware_concurrency())
+    numOfParallelTasks(std::thread::hardware_concurrency()-1)
 
 {
 
Change default config to use one thread less that CPUS available for the thread pool. Since there is a thread which calles next() it makes sense to not use all CPUs for the thread pool.
