summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2019-02-27 14:58:48 +0000
committerHans Wennborg <hans@hanshq.net>2019-02-27 14:58:48 +0000
commitb42a6004e7cc9d6df465e9e9e431b7b288de8199 (patch)
treed95257831cbb9d1f7dea271354aef7f0fc983202
parent97fecc3d4536e73a12b8c621242497cf43617da8 (diff)
Merging r354957:
------------------------------------------------------------------------ r354957 | ibiryukov | 2019-02-27 11:16:03 +0100 (Wed, 27 Feb 2019) | 11 lines [clangd] Set thread priority on Windows Reviewers: kadircet, gribozavr Reviewed By: kadircet, gribozavr Subscribers: ioeric, MaskRay, jkorous, arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D58683 ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/branches/release_80@354984 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--clangd/Threading.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/clangd/Threading.cpp b/clangd/Threading.cpp
index 695e30d8..733267c0 100644
--- a/clangd/Threading.cpp
+++ b/clangd/Threading.cpp
@@ -9,6 +9,8 @@
#include <pthread.h>
#elif defined(__APPLE__)
#include <sys/resource.h>
+#elif defined (_WIN32)
+#include <Windows.h>
#endif
namespace clang {
@@ -129,6 +131,11 @@ void setCurrentThreadPriority(ThreadPriority Priority) {
Priority == ThreadPriority::Low && !AvoidThreadStarvation
? PRIO_DARWIN_BG
: 0);
+#elif defined(_WIN32)
+ SetThreadPriority(GetCurrentThread(),
+ Priority == ThreadPriority::Low && !AvoidThreadStarvation
+ ? THREAD_MODE_BACKGROUND_BEGIN
+ : THREAD_MODE_BACKGROUND_END);
#endif
}