summaryrefslogtreecommitdiffstats
path: root/runtime/wti.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2009-07-20 10:25:02 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2009-07-20 10:25:02 +0200
commitef70e6174d4b373a601b73757ca19bb0f7dd6502 (patch)
tree50bc958008b9cd4c7faf838e8911acc0e4c089b5 /runtime/wti.h
parentb3978e7f7381c694a30a83c67c3fe2e1acc54207 (diff)
downloadrsyslog-ef70e6174d4b373a601b73757ca19bb0f7dd6502.tar.gz
rsyslog-ef70e6174d4b373a601b73757ca19bb0f7dd6502.tar.xz
rsyslog-ef70e6174d4b373a601b73757ca19bb0f7dd6502.zip
architecture change: queue now always has at least one worker thread
...if not running in direct mode. Previous versions could run without any active workers. This simplifies the code at a very small expense. See v5 compatibility note document for more in-depth discussion.
Diffstat (limited to 'runtime/wti.h')
-rw-r--r--runtime/wti.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/runtime/wti.h b/runtime/wti.h
index 67d89a2f..cd408bde 100644
--- a/runtime/wti.h
+++ b/runtime/wti.h
@@ -34,6 +34,7 @@
struct wti_s {
BEGINobjInstance;
pthread_t thrdID; /* thread ID */
+ bool bAlwaysRunning; /* should this thread always run? */
bool bIsRunning; /* is this thread currently running? */
wtp_t *pWtp; /* my worker thread pool (important if only the work thread instance is passed! */
batch_t batch; /* pointer to an object array meaningful for current user pointer (e.g. queue pUsr data elemt) */
@@ -48,6 +49,7 @@ rsRetVal wtiDestruct(wti_t **ppThis);
rsRetVal wtiWorker(wti_t *pThis);
rsRetVal wtiSetDbgHdr(wti_t *pThis, uchar *pszMsg, size_t lenMsg);
rsRetVal wtiCancelThrd(wti_t *pThis);
+rsRetVal wtiSetAlwaysRunning(wti_t *pThis);
rsRetVal wtiSetState(wti_t *pThis, bool bNew);
bool wtiGetState(wti_t *pThis);
PROTOTYPEObjClassInit(wti);