Core/DBLayer: Simplify template usage for DatabaseWorker
--HG-- branch : trunk
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user