From fd5f1e554d830de7b968707efaa99c4075aeb35c Mon Sep 17 00:00:00 2001 From: thenecromancer Date: Mon, 1 Feb 2010 10:23:18 +0100 Subject: Use recursive thread mutex for SQL transaction queue --HG-- branch : trunk --- src/shared/Database/SqlOperations.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/shared/Database/SqlOperations.h') diff --git a/src/shared/Database/SqlOperations.h b/src/shared/Database/SqlOperations.h index 18641c743e1..661078f50c9 100644 --- a/src/shared/Database/SqlOperations.h +++ b/src/shared/Database/SqlOperations.h @@ -24,6 +24,7 @@ #include "Common.h" #include "ace/Thread_Mutex.h" +#include "ace/Recursive_Thread_Mutex.h" #include "LockedQueue.h" #include #include "Utilities/Callback.h" @@ -56,11 +57,13 @@ class SqlStatement : public SqlOperation class SqlTransaction : public SqlOperation { + typedef ACE_Based::LockedQueue LockedQueue; + private: - std::queue m_queue; + LockedQueue m_queue; public: SqlTransaction() {} - void DelayExecute(const char *sql) { m_queue.push(strdup(sql)); } + void DelayExecute(const char *sql) { m_queue.add(strdup(sql)); } void Execute(Database *db); }; -- cgit v1.2.3