diff -r 000000000000 -r 89d6a7a84779 Symbian3/SDK/Source/GUID-9169062F-3B6D-544C-847C-BA859DAB33B9.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-9169062F-3B6D-544C-847C-BA859DAB33B9.dita Thu Jan 21 18:18:20 2010 +0000 @@ -0,0 +1,92 @@ + + + + + +Sessions +and requestsDescribes communication between the client and the server in the +client-server framework. +

Communication between client and server is represented by a session; +this is initiated by the client. A client thread may have several sessions +with a server. A session can also be shared by all the client threads in a +process, if supported by the server, and also by all threads across all processes, +again if supported by the server.

+

Sessions are maintained by the Kernel and the important points are:

+ +

If a call to the client interface requires a service from the server, the +client interface must set up and send a message. The message has a 32-bit +operation code to identify the request, and up to four 32-bit parameters. +The message is encapsulated within a TIpcArgs object. The +process can be summarised as follows:

+ +

The client-server framework also supports the sending of requests asynchronously +to the server.

+

The following diagram illustrates this:

+ + +

Sending messages asynchronously to the server

+
+

A server can support multiple connections from a client in a number of +distinct ways:

+ +

A server can support the creation of sharable sessions allowing either +all the threads in a client process to share a single session, or allowing +all threads across all processes to share a single session. The important +points are:

+ +
See also

Subsessions +within a session

+
\ No newline at end of file