summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/LibreOfficeKit/LibreOfficeKit.h3
-rw-r--r--include/LibreOfficeKit/LibreOfficeKit.hxx9
-rw-r--r--include/comphelper/lok.hxx2
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