clang-tools
7.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 103 of file Threading.h.
clang::clangd::AsyncTaskRunner::~AsyncTaskRunner | ( | ) |
Destructor waits for all pending tasks to finish.
Definition at line 45 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 53 of file Threading.cpp.
References Action.
|
inline |
Definition at line 108 of file Threading.h.
References Action, clang::clangd::Deadline::infinity(), Name, clang::clangd::Notification::wait(), and wait().
Referenced by wait().
bool clang::clangd::AsyncTaskRunner::wait | ( | Deadline | D | ) | const |
Definition at line 47 of file Threading.cpp.
References clang::clangd::wait().