Table of Contents for overview.html

  1. What is a Thread?

    1. History of Threads

  2. Why use Threads?

    1. Multiple S Processes
    2. Improved Performance
    3. Graphical User Interface Response
    4. Maintainable and Reusable Code
    5. User Level Client Server Applications
    6. High Level Validation of Threaded Applications
  3. S User Level Threads

    1. Creating Threads

      1. The thread class and thread() function

    2. Children, Parents and Thread Hierarchies

  4. The Thread Attributes Class

    1. Standard Connections

    2. Priorities

    3. Return Values and Detached Threads

    4. Access Permissions

    5. Cancellable Threads and Deadlock

  5. Controlling Threads at Creation Time

    1. Local Arguments and Thread Specific Data

    2. Creating Threads in Suspend Mode

    3. Thread Behavior and Non-Standard Actions

  6. Other Thread Classes

  • Synchronizing Work in Multiple Threads

    1. Shared Access

      1. Locks and Mutual Exclusion

        1. Explicit Locking

        2. Locks and Shared Variables

        3. Implicit Locking

      2. Locks and Values

        1. Thread Rendezvous

      3. Higher Level Lock Classes

        1. Barriers ([UNIX Thread Ch. 10]

        2. Reader Writer Locks

      4. Event Synchronization

        1. Thread Termination Events

      5. Shared Variable and ThreadLock Events

    2. Application Level User Management of Threads

      1. Controlling Active Threads

      2. Changing the State of Another Thread

    3. Evaluator Manager

    4. Process Level Thread Management

    5. Thread Safe Libraries

    6. S Internal Threads

    7. API Documentation

    8. Future Directions

      1. Distributed Computing, Parallel Processing and Process Migration.

      2. Asynchronous Debugging

    9. GUIs and Threads


    file:///caviar/home/duncan/RESEARCH/GUI/Threads/Docs/overview.html