From e4bff8be94c0db4f94e63ad448d0eeb869ccdbbd Mon Sep 17 00:00:00 2001 From: ShadowNinja Date: Tue, 7 Apr 2015 06:13:12 -0400 Subject: Clean up threading * Rename everything. * Strip J prefix. * Change UpperCamelCase functions to lowerCamelCase. * Remove global (!) semaphore count mutex on OSX. * Remove semaphore count getter (unused, unsafe, depended on internal API functions on Windows, and used a hack on OSX). * Add `Atomic`. * Make `Thread` handle thread names. * Add support for C++11 multi-threading. * Combine pthread and win32 sources. * Remove `ThreadStarted` (unused, unneeded). * Move some includes from the headers to the sources. * Move all of `Event` into its header (allows inlining with no new includes). * Make `Event` use `Semaphore` (except on Windows). * Move some porting functions into `Thread`. * Integrate logging with `Thread`. * Add threading test. --- src/client.h | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'src/client.h') diff --git a/src/client.h b/src/client.h index 547edfeab..75fd0c984 100644 --- a/src/client.h +++ b/src/client.h @@ -23,7 +23,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "network/connection.h" #include "environment.h" #include "irrlichttypes_extrabloated.h" -#include "jthread/jmutex.h" +#include "threading/mutex.h" #include #include #include @@ -89,14 +89,14 @@ public: u32 size() { - JMutexAutoLock lock(m_mutex); + MutexAutoLock lock(m_mutex); return m_queue.size(); } private: std::vector m_queue; std::set m_urgents; - JMutex m_mutex; + Mutex m_mutex; }; struct MeshUpdateResult @@ -119,19 +119,14 @@ private: MeshUpdateQueue m_queue_in; protected: - const char *getName() - { return "MeshUpdateThread"; } virtual void doUpdate(); public: - MeshUpdateThread() - { - } + MeshUpdateThread() : UpdateThread("Mesh") {} void enqueueUpdate(v3s16 p, MeshMakeData *data, bool ack_block_to_server, bool urgent); - MutexedQueue m_queue_out; v3s16 m_camera_offset; -- cgit v1.2.3