diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-13 07:04:13 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-20 07:49:37 +0200 |
commit | 232147ddc12d45ff7872f72a790077c26fe5ca0a (patch) | |
tree | 8f109308063147a5340b49141890837b10c645ff /cpukit/score/include/rtems | |
parent | score: Rework _Thread_Exit() (diff) | |
download | rtems-232147ddc12d45ff7872f72a790077c26fe5ca0a.tar.bz2 |
score: Add _Thread_Join() and _Thread_Cancel()
Split _Thread_Close() into _Thread_Join() and _Thread_Cancel() to
prepare for a re-use in pthread_join() and pthread_cancel().
Update #2555.
Update #2626.
Diffstat (limited to '')
-rw-r--r-- | cpukit/score/include/rtems/score/statesimpl.h | 2 | ||||
-rw-r--r-- | cpukit/score/include/rtems/score/thread.h | 9 | ||||
-rw-r--r-- | cpukit/score/include/rtems/score/threadimpl.h | 9 |
3 files changed, 9 insertions, 11 deletions
diff --git a/cpukit/score/include/rtems/score/statesimpl.h b/cpukit/score/include/rtems/score/statesimpl.h index f3c2293b96..8aebba068e 100644 --- a/cpukit/score/include/rtems/score/statesimpl.h +++ b/cpukit/score/include/rtems/score/statesimpl.h @@ -76,8 +76,6 @@ extern "C" { #define STATES_WAITING_FOR_SYSTEM_EVENT 0x40000 /** This macro corresponds to a task waiting for BSD wakeup. */ #define STATES_WAITING_FOR_BSD_WAKEUP 0x80000 -/** This macro corresponds to a task waiting for a task termination. */ -#define STATES_WAITING_FOR_TERMINATION 0x100000 /** This macro corresponds to a task being a zombie. */ #define STATES_ZOMBIE 0x200000 /** This macro corresponds to a task restarting. */ diff --git a/cpukit/score/include/rtems/score/thread.h b/cpukit/score/include/rtems/score/thread.h index d69967bde8..9b35b85f91 100644 --- a/cpukit/score/include/rtems/score/thread.h +++ b/cpukit/score/include/rtems/score/thread.h @@ -543,15 +543,6 @@ typedef struct { * @brief The current thread life state. */ Thread_Life_state state; - - /** - * @brief The terminator thread of this thread. - * - * In case the thread is terminated and another thread (the terminator) waits - * for the actual termination completion, then this field references the - * terminator thread. - */ - Thread_Control *terminator; } Thread_Life_control; #if defined(RTEMS_SMP) diff --git a/cpukit/score/include/rtems/score/threadimpl.h b/cpukit/score/include/rtems/score/threadimpl.h index e68f1191f8..eee896dd4b 100644 --- a/cpukit/score/include/rtems/score/threadimpl.h +++ b/cpukit/score/include/rtems/score/threadimpl.h @@ -213,6 +213,15 @@ void _Thread_Kill_zombies( void ); void _Thread_Exit( Thread_Control *executing ); +void _Thread_Join( + Thread_Control *the_thread, + States_Control waiting_for_join, + Thread_Control *executing, + ISR_lock_Context *lock_context +); + +void _Thread_Cancel( Thread_Control *the_thread, Thread_Control *executing ); + /** * @brief Closes the thread. * |