Core/DBLayer: Simplify template usage for DatabaseWorker

--HG--
branch : trunk
This commit is contained in:
Machiavelli
2010-12-06 19:28:05 +01:00
parent fbf525218b
commit 988a6f5c93
2 changed files with 5 additions and 6 deletions
+3 -3
View File
@@ -32,9 +32,9 @@ template <typename T>
class DatabaseWorker : public ACE_Task_Base
{
public:
DatabaseWorker(ACE_Activation_Queue* new_queue, T* t) :
DatabaseWorker(ACE_Activation_Queue* new_queue, DatabaseWorkerPool<T>* pool) :
m_queue(new_queue),
m_pool(t)
m_pool(pool)
{
/// Assign thread to task
activate();
@@ -87,7 +87,7 @@ class DatabaseWorker : public ACE_Task_Base
DatabaseWorker() : ACE_Task_Base() {}
ACE_Activation_Queue* m_queue;
MySQLConnection* m_conn;
T* m_pool; // Databasepool we operate on
DatabaseWorkerPool<T>* m_pool; // Databasepool we operate on
};
#endif
@@ -84,7 +84,7 @@ class DatabaseWorkerPool
m_delaythreads.resize(delaythreads);
for (uint8 i = 0; i < delaythreads; ++i)
m_delaythreads[i] = new DatabaseWorker<ThisClass>(m_queue, this);
m_delaythreads[i] = new DatabaseWorker<T>(m_queue, this);
sLog.outSQLDriver("Databasepool opened succesfuly. %u connections running.", m_connectionCount);
return true;
@@ -342,13 +342,12 @@ class DatabaseWorkerPool
}
private:
typedef DatabaseWorkerPool<T> ThisClass;
ACE_Activation_Queue* m_queue; //! Queue shared by async worker threads.
std::vector<T*> m_connections;
uint8 m_connectionCount; //! Counter of MySQL connections;
MySQLConnectionInfo m_connectionInfo;
std::vector<DatabaseWorker<ThisClass>*> m_delaythreads; //! Delaythreads (templatized)
std::vector<DatabaseWorker<T>*> m_delaythreads; //! Delaythreads (templatized)
};
#endif