documentation for class Thread added.

This commit is contained in:
Roland Jax
2014-11-16 14:49:14 +01:00
parent ada6a066fe
commit e5452282ad
3 changed files with 43 additions and 2 deletions
+1 -1
View File
@@ -76,7 +76,7 @@ class Appl
public: public:
/** /**
* @brief create an Appl instance and return the reference. * @brief create an appl instance and return the reference.
* @param command is true if an command is needed. * @param command is true if an command is needed.
* @return the reference to instance. * @return the reference to instance.
*/ */
+5 -1
View File
@@ -23,9 +23,13 @@
#include "thread.h" #include "thread.h"
/**
* @brief static function which will be called on thread startup.
* @return void pointer.
*/
static void* runThread(void* arg) static void* runThread(void* arg)
{ {
return ((Thread *)arg)->run(); return ((Thread*)arg)->run();
} }
Thread::~Thread() Thread::~Thread()
+37
View File
@@ -22,23 +22,60 @@
#include <pthread.h> #include <pthread.h>
/**
* @brief wrapper class for pthread.
*/
class Thread class Thread
{ {
public: public:
/**
* @brief constructor.
*/
Thread() : m_threadid(0), m_running(false), m_detached(false) {} Thread() : m_threadid(0), m_running(false), m_detached(false) {}
/**
* @brief virtual destructor.
*/
virtual ~Thread(); virtual ~Thread();
/**
* @brief create the thread and set name for process list.
* @param name the thread name which show in process list.
* @return value of thread creating.
*/
int start(const char* name); int start(const char* name);
/**
* @brief join the thread.
* @return value of thread joining.
*/
int join(); int join();
/**
* @brief detach the thread.
* @return value of thread detaching.
*/
int detach(); int detach();
/**
* @brief return the thread id.
* @return own thread id.
*/
pthread_t self() {return m_threadid; } pthread_t self() {return m_threadid; }
/**
* @brief virtul function which must be implented in derived class.
* @return void pointer.
*/
virtual void* run() = 0; virtual void* run() = 0;
private: private:
/** own thread id */
pthread_t m_threadid; pthread_t m_threadid;
/** true if thread is running */
bool m_running; bool m_running;
/** true if thread is detached */
bool m_detached; bool m_detached;
}; };