diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2010-06-09 14:34:35 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2010-06-09 14:34:35 +0200 |
commit | 395660f462c62029f76b99f73bd9a424a8cf73a2 (patch) | |
tree | df9a6b81f4ac86867092fcf953c09760b741901c /runtime/queue.h | |
parent | 11bd517465360278b270ee7c18607b4d1d97e44e (diff) | |
download | rsyslog-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.h | 4 |
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); |