From boost(std)::thread::hardware_concurrency description: if this value is not compu... 300/head
authorsvost <ya.nowa@yandex.ru>
Wed, 6 Apr 2016 10:15:58 +0000 (13:15 +0300)
committersvost <ya.nowa@yandex.ru>
Wed, 6 Apr 2016 10:15:58 +0000 (13:15 +0300)
src/kernel.cpp

index c8dc551..b18ae2b 100644 (file)
@@ -435,9 +435,13 @@ bool ScanKernelForward(unsigned char *kernel, uint32_t nBits, uint32_t nInputTxT
     // TODO: custom threads amount
 
     uint32_t nThreads = boost::thread::hardware_concurrency();
+    if (nThreads == 0)
+    {
+       nThreads = 1;
+       printf("Warning: hardware_concurrency() failed in %s:%d\n", __FILE__, __LINE__);
+    }
     uint32_t nPart = (SearchInterval.second - SearchInterval.first) / nThreads;
 
-
     KernelWorker *workers = new KernelWorker[nThreads];
 
     boost::thread_group group;