this seems to work for OSX,  and improved linux version with fallback.
This commit is contained in:
iceman1001 2019-04-25 08:29:15 +02:00
parent 1b246cd380
commit ce8d5c66ab

View file

@ -866,9 +866,18 @@ int num_CPUs(void) {
SYSTEM_INFO sysinfo;
GetSystemInfo(&sysinfo);
return sysinfo.dwNumberOfProcessors;
#elif defined(__linux__) || defined(__APPLE__)
#elif defined(__linux__) && defined(_SC_NPROCESSORS_ONLN)
#include <unistd.h>
return sysconf(_SC_NPROCESSORS_ONLN);
int count = sysconf(_SC_NPROCESSORS_ONLN);
if (count <= 0)
count = 1;
return count;
#elif defined(__APPLE__)
#include "sys/sysctl.h"
uint32 logicalcores = 0;
size_t size = sizeof( logicalcores );
sysctlbyname( "hw.logicalcpu", &logicalcores, &size, NULL, 0 );
return logicalcores;
#else
return 1;
#endif