clang-tools
8.0.0
|
Runs tasks on separate (detached) threads and wait for all tasks to finish. More...
#include <Threading.h>
Public Member Functions | |
~AsyncTaskRunner () | |
Destructor waits for all pending tasks to finish. More... | |
void | wait () const |
LLVM_NODISCARD bool | wait (Deadline D) const |
void | runAsync (const llvm::Twine &Name, llvm::unique_function< void()> Action) |
Runs tasks on separate (detached) threads and wait for all tasks to finish.
Objects that need to spawn threads can own an AsyncTaskRunner to ensure they all complete on destruction.
Definition at line 105 of file Threading.h.
clang::clangd::AsyncTaskRunner::~AsyncTaskRunner | ( | ) |
Destructor waits for all pending tasks to finish.
Definition at line 58 of file Threading.cpp.
References clang::clangd::wait().
void clang::clangd::AsyncTaskRunner::runAsync | ( | const llvm::Twine & | Name, |
llvm::unique_function< void()> | Action | ||
) |
Definition at line 66 of file Threading.cpp.
References Action.
|
inline |
Definition at line 110 of file Threading.h.
References Action, clang::clangd::Deadline::infinity(), Name, clang::clangd::runAsync(), clang::clangd::Notification::wait(), and wait().
Referenced by wait().
bool clang::clangd::AsyncTaskRunner::wait | ( | Deadline | D | ) | const |
Definition at line 60 of file Threading.cpp.
References clang::clangd::wait().