summaryrefslogtreecommitdiff
path: root/src/net/ipc.h
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-07-29 22:23:43 +0300
committerAndrei Karas <akaras@inbox.ru>2014-07-29 22:23:43 +0300
commitd425193e392ee14695faa75d7f6d7a7fd3ea4dd2 (patch)
tree1ea51b26a10554cdfa488960798e82caeec696bb /src/net/ipc.h
parent3941d588a3233176416edf90d1f248ac4cb0fe5e (diff)
downloadmanaverse-d425193e392ee14695faa75d7f6d7a7fd3ea4dd2.tar.gz
manaverse-d425193e392ee14695faa75d7f6d7a7fd3ea4dd2.tar.bz2
manaverse-d425193e392ee14695faa75d7f6d7a7fd3ea4dd2.tar.xz
manaverse-d425193e392ee14695faa75d7f6d7a7fd3ea4dd2.zip
Use thread safe way for ipc interaction.
Diffstat (limited to 'src/net/ipc.h')
-rw-r--r--src/net/ipc.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/net/ipc.h b/src/net/ipc.h
index eb2e92c9b..739eb746e 100644
--- a/src/net/ipc.h
+++ b/src/net/ipc.h
@@ -23,6 +23,9 @@
#include "net/sdltcpnet.h"
+#include <string>
+#include <vector>
+
#include <SDL_thread.h>
class IPC final
@@ -45,6 +48,8 @@ class IPC final
unsigned short getPort() const A_WARN_UNUSED
{ return mPort; }
+ void flush();
+
static int acceptLoop(void *ptr);
static void start();
@@ -57,8 +62,11 @@ class IPC final
unsigned int mNumReqs;
TcpNet::Socket mSocket;
+ std::vector<std::string> mDelayedCommands;
SDL_Thread *mThread;
+ SDL_mutex *mMutex;
unsigned short mPort;
+ volatile bool mThreadLocked;
bool mListen;
};