1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-10-01 13:58:20 +00:00

Merge pull request #1037 from TomHarte/SaferShutdown

Reduce potential surprise in DeferringAsyncTaskQueue::flush.
This commit is contained in:
Thomas Harte 2022-06-02 12:56:51 -04:00 committed by GitHub
commit 8ba1b4e0cf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 0 deletions

View File

@ -103,3 +103,8 @@ void DeferringAsyncTaskQueue::perform() {
}
});
}
void DeferringAsyncTaskQueue::flush() {
perform();
AsyncTaskQueue::flush();
}

View File

@ -87,6 +87,11 @@ class DeferringAsyncTaskQueue: public AsyncTaskQueue {
*/
void perform();
/*!
Blocks the caller until all previously-enqueud functions have completed.
*/
void flush();
private:
// TODO: this is a shared_ptr because of the issues capturing moveables in C++11;
// switch to a unique_ptr if/when adapting to C++14