diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/LibreOfficeKit/LibreOfficeKit.h | 3 | ||||
-rw-r--r-- | include/LibreOfficeKit/LibreOfficeKit.hxx | 9 | ||||
-rw-r--r-- | include/comphelper/lok.hxx | 2 |
3 files changed, 14 insertions, 0 deletions
diff --git a/include/LibreOfficeKit/LibreOfficeKit.h b/include/LibreOfficeKit/LibreOfficeKit.h index f57c7ad32843..2a0df3348f8d 100644 --- a/include/LibreOfficeKit/LibreOfficeKit.h +++ b/include/LibreOfficeKit/LibreOfficeKit.h @@ -144,6 +144,9 @@ struct _LibreOfficeKitClass /// @see lok::Office::joinThreads int (*joinThreads)(LibreOfficeKit* pThis); + /// @see lok::Office::startThreads + void (*startThreads)(LibreOfficeKit* pThis); + /// @see lok::Office::setForkedChild void (*setForkedChild)(LibreOfficeKit* pThis, bool bIsChild); }; diff --git a/include/LibreOfficeKit/LibreOfficeKit.hxx b/include/LibreOfficeKit/LibreOfficeKit.hxx index af9ccd12ab2f..14ad6a86f913 100644 --- a/include/LibreOfficeKit/LibreOfficeKit.hxx +++ b/include/LibreOfficeKit/LibreOfficeKit.hxx @@ -1224,6 +1224,15 @@ public: } /** + * Starts all threads that are necessary to continue working + * after a joinThreads(). + */ + void startThreads() + { + mpThis->pClass->startThreads(mpThis); + } + + /** * Informs that this process is either a parent, or a child * process post-fork, allowing improved resource sharing. */ diff --git a/include/comphelper/lok.hxx b/include/comphelper/lok.hxx index 555b749fa6a1..f998c12dedc3 100644 --- a/include/comphelper/lok.hxx +++ b/include/comphelper/lok.hxx @@ -26,6 +26,8 @@ class COMPHELPER_DLLPUBLIC SAL_LOPLUGIN_ANNOTATE("crosscast") ThreadJoinable public: /// shutdown and join threads, @returns true on success virtual bool joinThreads() = 0; + /// restart any required threads, usually are demand-restarted + virtual void startThreads() {} }; // Functions to be called only from the LibreOfficeKit implementation in desktop, not from other |