From 681e012fb542ee1bb2ea5312dc673987a7a8ee29 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 27 Feb 2014 16:36:11 +0100 Subject: db/update: cancel the update on shutdown --- src/db/update/Service.hxx | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/db/update/Service.hxx') diff --git a/src/db/update/Service.hxx b/src/db/update/Service.hxx index 936c2bb55..ebdda7bd1 100644 --- a/src/db/update/Service.hxx +++ b/src/db/update/Service.hxx @@ -64,6 +64,8 @@ public: Storage &_storage, DatabaseListener &_listener); + ~UpdateService(); + /** * Returns a non-zero job id when we are currently updating * the database. @@ -82,6 +84,12 @@ public: gcc_nonnull_all unsigned Enqueue(const char *path, bool discard); + /** + * Clear the queue and cancel the current update. Does not + * wait for the thread to exit. + */ + void CancelAllAsync(); + private: /* virtual methods from class DeferredMonitor */ virtual void RunDeferred() override; -- cgit v1.2.3