diff options
author | kurtis.heimerl <kurtis.heimerl@19bc5d8c-e614-43d4-8b26-e1612bc8e597> | 2013-05-31 21:47:25 +0000 |
---|---|---|
committer | kurtis.heimerl <kurtis.heimerl@19bc5d8c-e614-43d4-8b26-e1612bc8e597> | 2013-05-31 21:47:25 +0000 |
commit | 5a87247fdf2768a6408e0b87c210cebda85bc996 (patch) | |
tree | b538e7e42f8a7ba6c53e1b0bc22bfb359b1e0ef9 /CommonLibs/Threads.h | |
parent | bec41039bf2ec07c04a6e8b0b586b085ab9cd74c (diff) |
syncing commonlibs with Many thanks to Michael Iedema for these patches, makes config a lot better.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@5655 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Diffstat (limited to 'CommonLibs/Threads.h')
-rw-r--r-- | CommonLibs/Threads.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/CommonLibs/Threads.h b/CommonLibs/Threads.h index eba8e89..a38a73a 100644 --- a/CommonLibs/Threads.h +++ b/CommonLibs/Threads.h @@ -155,12 +155,16 @@ class Thread { public: /** Create a thread in a non-running state. */ - Thread(size_t wStackSize = (65536*4)):mThread((pthread_t)0) { mStackSize=wStackSize;} + Thread(size_t wStackSize = (65536*4)):mThread((pthread_t)0) { + pthread_attr_init(&mAttrib); // (pat) moved this here. + mStackSize=wStackSize; + } /** Destroy the Thread. It should be stopped and joined. */ + // (pat) If the Thread is destroyed without being started, then mAttrib is undefined. Oops. ~Thread() { pthread_attr_destroy(&mAttrib); } @@ -168,7 +172,7 @@ class Thread { void start(void *(*task)(void*), void *arg); /** Join a thread that will stop on its own. */ - void join() { int s = pthread_join(mThread,NULL); assert(!s); } + void join() { int s = pthread_join(mThread,NULL); assert(!s); mThread = 0; } }; |