#include <Thread.hpp>
Inheritance diagram for corelinux::Thread


Public Methods | |
| Thread ( void ) throw ( Assertion ) | |
| Default constructor. | |
| virtual | ~Thread ( void ) |
| Virtual destructor. | |
Static Public Methods | |
| Int | getKernelError ( void ) |
| getKernelError returns the thread instance errno for the last kernel call the thread made. More... | |
| ThreadIdentifier | getThreadIdentifier ( void ) |
| getThreadIdentifier retrieves the kernel process id for the caller thread. More... | |
| ThreadIdentifier | getParentThreadIdentifier ( void ) |
| getParentThreadIdentifier retrieves the parent thread of the current thread. More... | |
| ThreadIdentifierCref | getThreadManagerIdentifier ( void ) |
| getThreadManagerIdentifier retrieves the thread that Thread was instantiated from. More... | |
| ThreadContextCref | getThreadContext ( ThreadIdentifierCref ) throw ( InvalidThreadException ) |
| Retrieve a ThreadContext given a identifier. More... | |
| Count | getActiveThreadCount ( void ) |
| Retrieve the number of threads that are starting or running. More... | |
| Count | getCompletedThreadCount ( void ) |
| Retrieve the number of threads that are not starting or running or waiting to run. More... | |
| void | dump ( void ) |
| Debugging method for the moment. | |
| ThreadIdentifier | startThread ( ThreadContextRef ) |
| Start a thread as described by the context. More... | |
| Int | waitForThread ( ThreadIdentifierCref ) throw ( InvalidThreadException ) |
| Blocks the caller until the thread has ended execution, retrieving the return code from the associated thread context. More... | |
| void | destroyThreadContext ( ThreadIdentifierCref ) throw ( InvalidThreadException, Assertion ) |
| Destroys the managed context for the given identifier. More... | |
Protected Methods | |
| Thread ( ThreadCref ) throw ( Assertion ) | |
| Copy constructor won't do, its a singleton. More... | |
| ThreadRef | operator= ( ThreadCref ) throw ( Assertion ) |
| Assignment operator won't do, we should never get here anyway but the compiler will generate the missing method. More... | |
| bool | operator== ( ThreadCref ) const throw ( Assertion ) |
| Equality operator not valid for class utility. More... | |
Static Protected Methods | |
| void | threadTerminated ( Int, VoidPtr, VoidPtr ) |
Static Protected Attributes | |
| ThreadManager | theThreadManager |
| The singleton instance of Thread for synchronization. | |
It accomplishes this by allowing the caller to setup a context for execution and calling their defined entry point. There is still much work to be done such as:
|
|
Copy constructor won't do, its a singleton.
|
|
|
Destroys the managed context for the given identifier.
|
|
|
Retrieve the number of threads that are starting or running.
|
|
|
Retrieve the number of threads that are not starting or running or waiting to run.
|
|
|
getKernelError returns the thread instance errno for the last kernel call the thread made.
|
|
|
getParentThreadIdentifier retrieves the parent thread of the current thread.
|
|
|
Retrieve a ThreadContext given a identifier.
|
|
|
getThreadIdentifier retrieves the kernel process id for the caller thread.
|
|
|
getThreadManagerIdentifier retrieves the thread that Thread was instantiated from.
|
|
|
Assignment operator won't do, we should never get here anyway but the compiler will generate the missing method.
|
|
|
Equality operator not valid for class utility.
|
|
|
Start a thread as described by the context.
|
|
|
Blocks the caller until the thread has ended execution, retrieving the return code from the associated thread context.
|