mirror of
https://github.com/MaskRay/ccls.git
synced 2024-11-25 09:05:10 +00:00
Set indexer threads' priority to ThreadPriority::Background (#538)
This commit is contained in:
parent
6c87a4656c
commit
386f714f5e
@ -12,6 +12,7 @@
|
||||
#include "working_files.hh"
|
||||
|
||||
#include <llvm/ADT/Twine.h>
|
||||
#include <llvm/Config/llvm-config.h>
|
||||
#include <llvm/Support/Threading.h>
|
||||
|
||||
#include <rapidjson/document.h>
|
||||
@ -255,6 +256,12 @@ void *indexer(void *arg_) {
|
||||
delete arg;
|
||||
std::string name = "indexer" + std::to_string(idx);
|
||||
set_thread_name(name.c_str());
|
||||
// Don't lower priority on __APPLE__. getpriority(2) says "When setting a
|
||||
// thread into background state the scheduling priority is set to lowest
|
||||
// value, disk and network IO are throttled."
|
||||
#if LLVM_ENABLE_THREADS && LLVM_VERSION_MAJOR >= 9 && !defined(__APPLE__)
|
||||
set_thread_priority(ThreadPriority::Background);
|
||||
#endif
|
||||
pipeline::indexer_Main(h->manager, h->vfs, h->project, h->wfiles);
|
||||
pipeline::threadLeave();
|
||||
return nullptr;
|
||||
|
Loading…
Reference in New Issue
Block a user