mirror of
https://github.com/genodelabs/genode.git
synced 2025-04-08 11:55:24 +00:00
parent
f054b70e33
commit
fde150b052
@ -39,7 +39,7 @@ namespace Kernel
|
||||
{
|
||||
enum {
|
||||
NEW_THREAD = 0,
|
||||
DELETE_THREAD = 1,
|
||||
KILL_THREAD = 1,
|
||||
START_THREAD = 2,
|
||||
PAUSE_THREAD = 3,
|
||||
RESUME_THREAD = 4,
|
||||
@ -218,17 +218,15 @@ namespace Kernel
|
||||
|
||||
|
||||
/**
|
||||
* Delete an existing thread
|
||||
* Destruct kernel thread-object
|
||||
*
|
||||
* \param id kernel name of the targeted thread
|
||||
* \param thread_id kernel name of the targeted thread
|
||||
*
|
||||
* Restricted to core threads. After calling this, the memory that was
|
||||
* granted beforehand by 'new_thread' to kernel for managing this thread
|
||||
* is freed again.
|
||||
* Restricted to core threads.
|
||||
*/
|
||||
inline void delete_thread(unsigned const thread_id)
|
||||
inline void kill_thread(unsigned const thread_id)
|
||||
{
|
||||
call(Call_id::DELETE_THREAD, thread_id);
|
||||
call(Call_id::KILL_THREAD, thread_id);
|
||||
}
|
||||
|
||||
|
||||
|
@ -338,7 +338,7 @@ void Thread::_call_new_thread()
|
||||
}
|
||||
|
||||
|
||||
void Thread::_call_delete_thread()
|
||||
void Thread::_call_kill_thread()
|
||||
{
|
||||
/* check permissions */
|
||||
assert(_core());
|
||||
@ -866,7 +866,7 @@ void Thread::_call()
|
||||
{
|
||||
switch (user_arg_0()) {
|
||||
case Call_id::NEW_THREAD: _call_new_thread(); return;
|
||||
case Call_id::DELETE_THREAD: _call_delete_thread(); return;
|
||||
case Call_id::KILL_THREAD: _call_kill_thread(); return;
|
||||
case Call_id::START_THREAD: _call_start_thread(); return;
|
||||
case Call_id::PAUSE_THREAD: _call_pause_thread(); return;
|
||||
case Call_id::RESUME_THREAD: _call_resume_thread(); return;
|
||||
|
@ -185,7 +185,7 @@ class Kernel::Thread
|
||||
void _call_new_pd();
|
||||
void _call_kill_pd();
|
||||
void _call_new_thread();
|
||||
void _call_delete_thread();
|
||||
void _call_kill_thread();
|
||||
void _call_start_thread();
|
||||
void _call_pause_thread();
|
||||
void _call_resume_thread();
|
||||
|
@ -69,7 +69,7 @@ Platform_thread::~Platform_thread()
|
||||
rm->remove_client(cap);
|
||||
}
|
||||
/* destroy object at the kernel */
|
||||
Kernel::delete_thread(_id);
|
||||
Kernel::kill_thread(_id);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user