class CoreExport Win32ThreadEngine : public ThreadEngine
{
+ protected:
+
+ bool Mutex(bool enable);
+
public:
Win32ThreadEngine(InspIRCd* Instance);
virtual ~Win32ThreadEngine();
- bool Mutex(bool enable);
-
void Run();
static DWORD WINAPI Entry(void* parameter);
}
};
+class CoreExport Win32Mutex : public Mutex
+{
+ private:
+ CRITICAL_SECTION wutex;
+ public:
+ Win32Mutex(InspIRCd* Instance);
+ virtual void Enable(bool enable);
+ ~Win32Mutex();
+};
+
+class CoreExport MutexFactory : public Extensible
+{
+ protected:
+ InspIRCd* ServerInstance;
+ public:
+ MutexFactory(InspIRCd* Instance);
+ virtual Mutex* CreateMutex();
+};
+
#endif