summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--orkaudio/ImmediateProcessing.cpp12
-rw-r--r--orkaudio/ImmediateProcessing.h2
2 files changed, 12 insertions, 2 deletions
diff --git a/orkaudio/ImmediateProcessing.cpp b/orkaudio/ImmediateProcessing.cpp
index 181e659..1a6722f 100644
--- a/orkaudio/ImmediateProcessing.cpp
+++ b/orkaudio/ImmediateProcessing.cpp
@@ -25,6 +25,11 @@
ImmediateProcessing ImmediateProcessing::m_immediateProcessingSingleton;
+ImmediateProcessing::ImmediateProcessing()
+{
+ m_lastQueueFullTime = time(NULL);
+}
+
ImmediateProcessing* ImmediateProcessing::GetInstance()
{
return &m_immediateProcessingSingleton;
@@ -34,8 +39,11 @@ void ImmediateProcessing::AddAudioTape(AudioTapeRef audioTapeRef)
{
if (!m_audioTapeQueue.push(audioTapeRef))
{
- // Log error
- LOG4CXX_ERROR(LOG.immediateProcessingLog, CStdString("ImmediateProcessing: queue full"));
+ if( (time(NULL) - m_lastQueueFullTime) > 10 )
+ {
+ m_lastQueueFullTime = time(NULL);
+ LOG4CXX_ERROR(LOG.immediateProcessingLog, CStdString("ImmediateProcessing: queue full"));
+ }
}
}
diff --git a/orkaudio/ImmediateProcessing.h b/orkaudio/ImmediateProcessing.h
index 7912535..88c8d55 100644
--- a/orkaudio/ImmediateProcessing.h
+++ b/orkaudio/ImmediateProcessing.h
@@ -20,6 +20,7 @@
class ImmediateProcessing
{
public:
+ ImmediateProcessing();
static ImmediateProcessing* GetInstance();
static void ThreadHandler(void *args);
@@ -29,6 +30,7 @@ private:
static ImmediateProcessing m_immediateProcessingSingleton;
ThreadSafeQueue<AudioTapeRef> m_audioTapeQueue;
+ time_t m_lastQueueFullTime;
};
#endif