Single-threaded servers

Single-threaded servers are the simplest kind of servers, consisting of:

When a single-threaded server starts:

  1. The first thread in the task starts up and creates a TServiceDefinition using TStandardServiceDefinition.
  2. This thread creates the transport for the dispatcher, directly or indirectly.
Single-threaded servers are easy to understand and implement, but they can only process one request at a time. If the thread processing the request blocks for any reason, all clients of the server back up while waiting for the thread to unblock.

Because threads can block for a variety of reasons, single-threaded servers can seriously degrade system performance. As a result, most server applications do not lend themselves to the single-threaded model--with the exception of requests that cannot block, do not perform I/O, or are called infrequently.


[Contents] [Previous] [Next]
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.

Generated with WebMaker