add mutex and thread abstraction to common files

Origin commit data
------------------
Branch: master
Commit: 626c785081
Author: smogm <smogm@vh0st.me>
Date: 2015-01-11 (Sun, 11 Jan 2015)


------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
smogm
2015-01-11 17:58:37 +01:00
parent e36707596a
commit 65ee259b43
4 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
#include "thread_abstraction.h"
Thread::Thread() :
mIsRunning(false),
mThread()
{
}
Thread::~Thread()
{
// if thread is still running on object destruction, cancel thread the hard way:
if (mIsRunning)
{
pthread_cancel(mThread);
}
}
void Thread::startThread()
{
mIsRunning = true;
pthread_create(&mThread, 0, &Thread::runThread, this);
}
void Thread::joinThread()
{
pthread_join(mThread, 0);
mIsRunning = false;
}
void* Thread::runThread(void* ptr)
{
((Thread*)ptr)->run();
}