Closing a topic in Symbian
I'm a little disappointed with the definition of Thread termination they have on Symbian. Please correct me if I am wrong. Symbian OS themes can end their lives in 4 different ways:
- When the thread function completes normally,
- When user :: Exit () is called for the current thread;
- When a thread dies forcibly by calling RThread :: Kill () or RThread :: Terminate ();
- When panic was raised on the User :: Panic thread
My question is, which of these four situations corresponds to "thread termination"?
PS: I came up with this question while researching the definition of "critical threads" in the Symbian documentation. Perhaps this extract might be helpful.
source to share
The death of the thread (and any subsequent notifications, etc.) actually simply indicates that the thread will never execute more code; this does not guarantee that the operating system has not yet finished deleting the thread.
Now if you check RThread::ExitType
, you will find the following information:
EExitKill
The thread or process ended as a result of kill, i.e.Kill()
was called on a handleRThread
orRProcess
. Or the thread was terminated as a result of the callUser::Exit()
.
EExitTerminate
The thread or process terminated as a result of termination, i.e.Terminate()
was called on a handleRThread
orRProcess
.
EExitPanic
The thread or process was in a panic.
EExitPending
The thread or process is alive.
For cases 1, 2, and Kill
case 3, you get EExitKill
. Other cases are quite understandable.
source to share