summaryrefslogtreecommitdiffstats
path: root/runtime/queue.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2010-06-09 14:34:35 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2010-06-09 14:34:35 +0200
commit395660f462c62029f76b99f73bd9a424a8cf73a2 (patch)
treedf9a6b81f4ac86867092fcf953c09760b741901c /runtime/queue.h
parent11bd517465360278b270ee7c18607b4d1d97e44e (diff)
downloadrsyslog-395660f462c62029f76b99f73bd9a424a8cf73a2.tar.gz
rsyslog-395660f462c62029f76b99f73bd9a424a8cf73a2.tar.xz
rsyslog-395660f462c62029f76b99f73bd9a424a8cf73a2.zip
somewhat improved direct mode queue performance
... but only for batch enqueues. This will not help much with the current code, but will play well with upcoming changes.
Diffstat (limited to 'runtime/queue.h')
-rw-r--r--runtime/queue.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/runtime/queue.h b/runtime/queue.h
index 8ede6922..33b21c9a 100644
--- a/runtime/queue.h
+++ b/runtime/queue.h
@@ -114,6 +114,9 @@ struct queue_s {
rsRetVal (*qDeq)(struct queue_s *pThis, void **ppUsr);
rsRetVal (*qDel)(struct queue_s *pThis);
/* end type-specific handler */
+ /* public entry points (set during construction, permit to set best algorithm for params selected) */
+ rsRetVal (*MultiEnq)(qqueue_t *pThis, multi_submit_t *pMultiSub);
+ /* end public entry points */
/* synchronization variables */
pthread_mutex_t mutThrdMgmt; /* mutex for the queue's thread management */
pthread_mutex_t *mut; /* mutex for enqueing and dequeueing messages */
@@ -174,7 +177,6 @@ struct queue_s {
/* prototypes */
rsRetVal qqueueDestruct(qqueue_t **ppThis);
-rsRetVal qqueueMultiEnqObj(qqueue_t *pThis, multi_submit_t *pMultiSub);
rsRetVal qqueueEnqObj(qqueue_t *pThis, flowControl_t flwCtlType, void *pUsr);
rsRetVal qqueueStart(qqueue_t *pThis);
rsRetVal qqueueSetMaxFileSize(qqueue_t *pThis, size_t iMaxFileSize);