ilya-biryukov added inline comments.

================
Comment at: clangd/index/Background.cpp:107
   while (ThreadPoolSize--) {
     ThreadPool.emplace_back([this] { run(); });
   }
----------------
NIT: remove braces around a single statement


================
Comment at: clangd/index/Background.cpp:142
     }
+    setCurrentThreadPriority(Priority);
     (*Task)();
----------------
NIT: maybe add newlines around the three lines (`setCurrentThreadPriority` and 
Task execution). These are pretty important.
 


================
Comment at: clangd/index/Background.cpp:142
     }
+    setCurrentThreadPriority(Priority);
     (*Task)();
----------------
ilya-biryukov wrote:
> NIT: maybe add newlines around the three lines (`setCurrentThreadPriority` 
> and Task execution). These are pretty important.
>  
Maybe only lower the priority iff it's `!= Normal`. Would avoid system calls in 
most cases (I believe you mentioned it in the other comment before too)


================
Comment at: clangd/index/Background.cpp:206
+    auto I = Tasks.end();
+    if (Priority == ThreadPriority::Normal) {
+      I = Tasks.begin();
----------------
A short comment about the structure of the queue would be in order, i.e. 
mention that we first store all "normal" tasks, followed by "low" tasks. And 
that we don't expect the number of "normal" tasks to grow beyond single-digit 
numbers, so it's ok to do linear search here and insert in that position


================
Comment at: clangd/index/Background.cpp:208
+      I = Tasks.begin();
+      while (I->second == ThreadPriority::Normal)
+        I++;
----------------
Maybe change to `llvm::find_if(Tasks, [](Task &T) { return T.second == 
ThreadPriority::Low); } `?
More concise and avoids explicit loop.


Repository:
  rCTE Clang Tools Extra

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D55315/new/

https://reviews.llvm.org/D55315



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to