class RUndertaker : public RHandleBase |
Handle to a thread death notifier.
The notifier allows threads to be notified of the death of another thread.
The thread-death notifier itself is a kernel object.
Public Member Functions | |
---|---|
IMPORT_C TInt | Create () |
IMPORT_C TInt | Logon ( TRequestStatus &, TInt &) |
IMPORT_C TInt | LogonCancel () |
Inherited Enumerations | |
---|---|
RHandleBase:TAttributes |
Inherited Attributes | |
---|---|
RHandleBase::iHandle |
IMPORT_C TInt | Create | ( | ) |
Creates a thread-death notifier, and opens this handle to that thread-death notifier.
Ownership of this thread-death notifier is vested in the current process.
IMPORT_C TInt | Logon | ( | TRequestStatus & | aStatus, |
TInt & | aThreadHandle | |||
) | const |
Issues a request for notification of the death of a thread.
When another thread dies, the request completes and the TRequestStatus object contains the value KErrDied; in addition, aThreadHandle contains the handle-number of the dying thread.
The requesting thread can construct a proper handle for the dying thread using the code:
{ RThread r; r.SetHandle(aThreadHandle); ...r.Close(); }
Alternatively, if an outstanding request is cancelled by a call to LogonCancel() , then the request completes with the value KErrCancel.
Note that if a request completes normally, i.e. not as a result of a LogonCancel() , then the handle to the dying thread must be closed when there is no further interest in it.
TRequestStatus & aStatus | A reference to the request status object. |
TInt & aThreadHandle | The handle-number representing the dying thread. |
IMPORT_C TInt | LogonCancel | ( | ) | const |
Cancels an outstanding notification request to the thread-death notifier.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.