diff options
author | Lyuma <xn.lyuma@gmail.com> | 2022-03-29 00:01:31 -0700 |
---|---|---|
committer | Lyuma <xn.lyuma@gmail.com> | 2022-03-29 00:01:31 -0700 |
commit | ee02a7f785b672304346028bc500949050432fa5 (patch) | |
tree | 081e6bd431b944d2e874aec09560dd3b42d7ee8b | |
parent | 29a946ee91b7a0ebfee35504436d177630c0924f (diff) |
Keep editor at normal priority on windows.
The multithreaded importer often causes system-wide hangs when importing more than 20 files at a time.
Running the editor at normal priority allows other applications on the system to be responsive during long imports.
-rw-r--r-- | platform/windows/display_server_windows.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/platform/windows/display_server_windows.cpp b/platform/windows/display_server_windows.cpp index 16323dcc13..d73239614f 100644 --- a/platform/windows/display_server_windows.cpp +++ b/platform/windows/display_server_windows.cpp @@ -3626,7 +3626,11 @@ DisplayServerWindows::DisplayServerWindows(const String &p_rendering_driver, Win } #endif - if (!OS::get_singleton()->is_in_low_processor_usage_mode()) { + if (!Engine::get_singleton()->is_editor_hint() && !OS::get_singleton()->is_in_low_processor_usage_mode()) { + // Increase priority for projects that are not in low-processor mode (typically games) + // to reduce the risk of frame stuttering. + // This is not done for the editor to prevent importers or resource bakers + // from making the system unresponsive. SetPriorityClass(GetCurrentProcess(), ABOVE_NORMAL_PRIORITY_CLASS); DWORD index = 0; HANDLE handle = AvSetMmThreadCharacteristics("Games", &index); |