mirror of
https://github.com/RPCS3/llvm.git
synced 2026-07-20 19:04:10 -04:00
[ThreadPool] Simplify the interface. NFCI.
The callers don't use the return value. Found by Michael Spencer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@288016 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -82,7 +82,7 @@ void ThreadPool::wait() {
|
||||
[&] { return !ActiveThreads && Tasks.empty(); });
|
||||
}
|
||||
|
||||
std::shared_future<ThreadPool::VoidTy> ThreadPool::asyncImpl(TaskTy Task) {
|
||||
void ThreadPool::asyncImpl(TaskTy Task) {
|
||||
/// Wrap the Task in a packaged_task to return a future object.
|
||||
PackagedTaskTy PackagedTask(std::move(Task));
|
||||
auto Future = PackagedTask.get_future();
|
||||
@@ -96,7 +96,6 @@ std::shared_future<ThreadPool::VoidTy> ThreadPool::asyncImpl(TaskTy Task) {
|
||||
Tasks.push(std::move(PackagedTask));
|
||||
}
|
||||
QueueCondition.notify_one();
|
||||
return Future.share();
|
||||
}
|
||||
|
||||
// The destructor joins all threads, waiting for completion.
|
||||
@@ -136,7 +135,7 @@ void ThreadPool::wait() {
|
||||
}
|
||||
}
|
||||
|
||||
std::shared_future<ThreadPool::VoidTy> ThreadPool::asyncImpl(TaskTy Task) {
|
||||
void ThreadPool::asyncImpl(TaskTy Task) {
|
||||
#ifndef _MSC_VER
|
||||
// Get a Future with launch::deferred execution using std::async
|
||||
auto Future = std::async(std::launch::deferred, std::move(Task)).share();
|
||||
@@ -148,7 +147,6 @@ std::shared_future<ThreadPool::VoidTy> ThreadPool::asyncImpl(TaskTy Task) {
|
||||
PackagedTaskTy PackagedTask([Future](bool) -> bool { Future.get(); return false; });
|
||||
#endif
|
||||
Tasks.push(std::move(PackagedTask));
|
||||
return Future;
|
||||
}
|
||||
|
||||
ThreadPool::~ThreadPool() {
|
||||
|
||||
Reference in New Issue
Block a user