summaryrefslogtreecommitdiff
path: root/ringbuffer.h
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2012-09-22 11:52:33 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2012-09-22 11:52:33 +0200
commit72c03260d77a0de52ed57992e374f26211fe2063 (patch)
treeea61de60ff2567caee18e1b4a2afbb563de56e6f /ringbuffer.h
parente898a28258ac97cc15f875fb8fa9b274266f6d01 (diff)
downloadvdr-72c03260d77a0de52ed57992e374f26211fe2063.tar.gz
vdr-72c03260d77a0de52ed57992e374f26211fe2063.tar.bz2
The new class cIoThrottle is used to allow I/O intense threads to temporarily suspend their activities in case buffers run full
Diffstat (limited to 'ringbuffer.h')
-rw-r--r--ringbuffer.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/ringbuffer.h b/ringbuffer.h
index d234502d..5b2eeb1c 100644
--- a/ringbuffer.h
+++ b/ringbuffer.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: ringbuffer.h 2.3 2011/12/04 13:38:17 kls Exp $
+ * $Id: ringbuffer.h 2.4 2012/09/20 09:29:32 kls Exp $
*/
#ifndef __RINGBUFFER_H
@@ -22,6 +22,7 @@ private:
time_t lastOverflowReport;
int overflowCount;
int overflowBytes;
+ cIoThrottle *ioThrottle;
protected:
tThreadId getThreadTid;
int maxFill;//XXX
@@ -40,6 +41,7 @@ public:
cRingBuffer(int Size, bool Statistics = false);
virtual ~cRingBuffer();
void SetTimeouts(int PutTimeout, int GetTimeout);
+ void SetIoThrottle(void);
void ReportOverflow(int Bytes);
};