aboutsummaryrefslogtreecommitdiff
path: root/lib/thread.h
diff options
context:
space:
mode:
authorjohannst <johannes.stoelp@gmail.com>2020-09-26 23:58:24 +0200
committerjohannst <johannes.stoelp@gmail.com>2020-09-26 23:58:24 +0200
commit1b1bd56777358ef2fa538a9b7b62c6e8c823489b (patch)
treeeeeb80ac415999857093631696c81b02d2217bcc /lib/thread.h
parent5cbdde2c97229a552852af57232c4e5bbe814a38 (diff)
downloadmatcha-threads-1b1bd56777358ef2fa538a9b7b62c6e8c823489b.tar.gz
matcha-threads-1b1bd56777358ef2fa538a9b7b62c6e8c823489b.zip
added finished flag to thread + catch exceptions in thread entry function as unwinding across entry fn would be catastrophic
Diffstat (limited to 'lib/thread.h')
-rw-r--r--lib/thread.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/thread.h b/lib/thread.h
index e392052..d983734 100644
--- a/lib/thread.h
+++ b/lib/thread.h
@@ -13,12 +13,15 @@ namespace nMatcha {
virtual void threadFn() = 0;
+ bool isFinished() const { return mFinished; }
+
protected:
void yield();
private:
static void entry(void* obj);
void* mStackPtr;
+ bool mFinished;
friend struct Executor;
const Executor* mExecutor;