Symbian Developer Library

SYMBIAN OS V6.1 EDITION FOR C++

[Index] [Glossary] [Previous] [Next]



Kernel services

Many asynchronous services are provided to user threads by the kernel.

The RTimer class is an example. It includes functions such as:

After(TRequestStatus &aStatus,TTimeIntervalMicroSeconds32 anInterval);

This makes a timer request that completes after a given number of microseconds.

The RTimer class is a client-side handle to the kernel’s timer service. When an RTimer is opened, using its CreateLocal() function, a Kernel object is created which holds the state of the timer and the ID of the client’s thread. When a request function is issued, the client-side handle:

When the Kernel side timer completes, it posts the TRequestStatus with a completion code, normally KErrNone, and uses the thread id stored with the Kernel side timer object to signal the thread’s request semaphore.

Provision of asynchronous services by the Kernel involves sending messages between the client thread and the Kernel.

The Kernel provides the most basic services available. Its main services are defined in e32std.h, including timing, notification and the classes used in the client-server framework.