Merge pull request #64815 from RandomShaper/default_cpu_count
Improve default `OS`'s CPU count getter
This commit is contained in:
commit
c2c9a582da
|
@ -38,6 +38,7 @@
|
||||||
#include "core/version_generated.gen.h"
|
#include "core/version_generated.gen.h"
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
#include <thread>
|
||||||
|
|
||||||
OS *OS::singleton = nullptr;
|
OS *OS::singleton = nullptr;
|
||||||
uint64_t OS::target_ticks = 0;
|
uint64_t OS::target_ticks = 0;
|
||||||
|
@ -321,7 +322,7 @@ String OS::get_unique_id() const {
|
||||||
}
|
}
|
||||||
|
|
||||||
int OS::get_processor_count() const {
|
int OS::get_processor_count() const {
|
||||||
return 1;
|
return std::thread::hardware_concurrency();
|
||||||
}
|
}
|
||||||
|
|
||||||
String OS::get_processor_name() const {
|
String OS::get_processor_name() const {
|
||||||
|
|
|
@ -500,10 +500,6 @@ bool OS_Unix::set_environment(const String &p_var, const String &p_value) const
|
||||||
return setenv(p_var.utf8().get_data(), p_value.utf8().get_data(), /* overwrite: */ true) == 0;
|
return setenv(p_var.utf8().get_data(), p_value.utf8().get_data(), /* overwrite: */ true) == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int OS_Unix::get_processor_count() const {
|
|
||||||
return sysconf(_SC_NPROCESSORS_CONF);
|
|
||||||
}
|
|
||||||
|
|
||||||
String OS_Unix::get_user_data_dir() const {
|
String OS_Unix::get_user_data_dir() const {
|
||||||
String appname = get_safe_dir_name(ProjectSettings::get_singleton()->get("application/config/name"));
|
String appname = get_safe_dir_name(ProjectSettings::get_singleton()->get("application/config/name"));
|
||||||
if (!appname.is_empty()) {
|
if (!appname.is_empty()) {
|
||||||
|
|
|
@ -84,8 +84,6 @@ public:
|
||||||
virtual bool set_environment(const String &p_var, const String &p_value) const override;
|
virtual bool set_environment(const String &p_var, const String &p_value) const override;
|
||||||
virtual String get_locale() const override;
|
virtual String get_locale() const override;
|
||||||
|
|
||||||
virtual int get_processor_count() const override;
|
|
||||||
|
|
||||||
virtual void initialize_debugging() override;
|
virtual void initialize_debugging() override;
|
||||||
|
|
||||||
virtual String get_executable_path() const override;
|
virtual String get_executable_path() const override;
|
||||||
|
|
|
@ -870,17 +870,6 @@ BOOL is_wow64() {
|
||||||
return wow64;
|
return wow64;
|
||||||
}
|
}
|
||||||
|
|
||||||
int OS_Windows::get_processor_count() const {
|
|
||||||
SYSTEM_INFO sysinfo;
|
|
||||||
if (is_wow64()) {
|
|
||||||
GetNativeSystemInfo(&sysinfo);
|
|
||||||
} else {
|
|
||||||
GetSystemInfo(&sysinfo);
|
|
||||||
}
|
|
||||||
|
|
||||||
return sysinfo.dwNumberOfProcessors;
|
|
||||||
}
|
|
||||||
|
|
||||||
String OS_Windows::get_processor_name() const {
|
String OS_Windows::get_processor_name() const {
|
||||||
const String id = "Hardware\\Description\\System\\CentralProcessor\\0";
|
const String id = "Hardware\\Description\\System\\CentralProcessor\\0";
|
||||||
|
|
||||||
|
|
|
@ -175,7 +175,6 @@ public:
|
||||||
|
|
||||||
virtual String get_locale() const override;
|
virtual String get_locale() const override;
|
||||||
|
|
||||||
virtual int get_processor_count() const override;
|
|
||||||
virtual String get_processor_name() const override;
|
virtual String get_processor_name() const override;
|
||||||
|
|
||||||
virtual uint64_t get_embedded_pck_offset() const override;
|
virtual uint64_t get_embedded_pck_offset() const override;
|
||||||
|
|
Loading…
Reference in New Issue