$Id$

This directory contains a number of examples that illustrate how to
use the following ACE library components.  If you want to see how
to program using ACE, this is the best place to start reading code and
learning the ACE design.

These examples are roughly divided up according to the class
categories in ACE.  For more information on ACE class categories,
please take a look at $ACE_ROOT/ACE-categories.

  . ASX
    Illustrate various components in the ADAPTIVE Service
    eXecutive, which is a user-level implementation of
    System V STREAMS written in C++.

  . Connection
    Illustrate how the various Acceptor and Connector
    components can be used.

  . IOStream
    Illustrate how the ACE IOStreams wrapper works.

  . IPC_SAP
    Illustrate the C++ wrappers for Sockets, TLI, UNIX and
    Win32 Named Pipes, and UNIX Stream Pipes.

  . Log_Msg
    Illustrate some of the features of the logging
    facility used in ACE to consolidate debugging and
    error report.

  . Logger
    This is a simple version of a Server Logging Daemon
    that illustrates the "bare-bones" usage of the
    Reactor.  A more sophisticated set of logging examples
    are in the $ACE_ROOT/netsvcs/{client,lib,server}
    directories.

  . Mem_Map
    Illustrate how the ACE memory-mapped file components
    work.

  . Misc
    Various miscellaneous tests that illustrate how ACE
    utility components work.

        . NT_Service
    Illustrates how to write an NT Service using the
    ACE_NT_Service class, and how to insert it and remove it
    in the SCM, start it, and stop it, and how to run as a
    service.

  . Reactor
    Contains many examples of how to utilize the ACE
    object-oriented event demultiplexer.

  . Service_Configurator
    Illustrates the use of the ACE mechanism for
    dynamically configuring communication services.

  . Shared_Malloc
    Illustrates the use of ACE wrappers for
    sophisticated use of the ACE_Malloc shared
    memory components.

  . Shared_Memory
    Illustrates the use of simple ACE wrappers for
    shared memory and memory mapped file.

  . System_V_IPC
    Illustrates how to use the ACE wrappers for System V
    IPC (i.e., semphores, shared memory, and message
    queues).

  . Threads
    Illustrates the use of ACE wrappers for threading
    and synchronization.

