* | Inspire Internet Relay Chat Daemon |
* +------------------------------------+
*
- * InspIRCd: (C) 2002-2008 InspIRCd Development Team
+ * InspIRCd: (C) 2002-2009 InspIRCd Development Team
* See: http://www.inspircd.org/wiki/index.php/Credits
*
* This program is free but copyrighted software; see
/** Creator instance
*/
InspIRCd* ServerInstance;
+
/** New Thread being created.
*/
Thread* NewThread;
+ /** Enable or disable system-wide mutex for threading.
+ * Remember that if you toggle the mutex you MUST UNSET
+ * IT LATER otherwise the program will DEADLOCK!
+ * It is recommended that you AVOID USE OF THIS METHOD
+ * and use your own Mutex class, this function is mainly
+ * reserved for use by the core and by the Thread engine
+ * itself.
+ * @param enable True to lock the mutex.
+ */
+ virtual bool Mutex(bool enable) = 0;
public:
/** Constructor.
*/
virtual ~ThreadEngine();
- /** Enable or disable system-wide mutex for threading.
- * Remember that if you toggle the mutex you MUST UNSET
- * IT LATER otherwise the program will DEADLOCK!
- * It is recommended that you AVOID USE OF THIS METHOD
- * and use your own Mutex class, this function is mainly
- * reserved for use by the core and by the Thread engine
- * itself.
- * @param enable True to lock the mutex.
+ /** Lock the system wide mutex. See the documentation for
+ * ThreadEngine::Mutex().
+ */
+ void Lock() { this->Mutex(true); }
+
+ /** Unlock the system wide mutex. See the documentation for
+ * ThreadEngine::Mutex()
*/
- virtual bool Mutex(bool enable) = 0;
+ void Unlock() { this->Mutex(false); }
/** Run the newly created thread.
*/