Index


[Return to Bookshelf] [Contents] [Previous Section] [Help]


Index


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


A

Access
  shared resources, [+]
Ada compiler
  generating reentrant code, [+]
Addressing (64-Bit)
  on OpenVMS Alpha, [+]

Alert
  asynchronous delivery and exception handlers, [+]
  delivery, [+]
  disabling asynchronous delivery of, [+]
  disabling delivery of, [+]
  enabling asynchronous delivery of, [+]
  enabling delivery of, [+]
  requesting delivery of, [+]
  sending to a thread, [+]
  using asynchronous delivery with external routines, [+]

Alert delivery state
  restoring, [+]
Alertable
  ensuring for matrix multiplication, [+]
API errors, reporting,  [+]
ASTs,  [+]
ASTs (asynchronous system traps)
  restrictions on use, [+]

Asynchronous cancelability,  [+]
Asynchronous execution
  designing code for, [+]
Asynchronous programming techniques
  using in a multithreaded program, [+]
Asynchronous system traps
  See ASTs
Atomic queue,  [+]

Attributes
  See also Attributes object
  condition variable, [+]
  detachstate, [+], [+], [+], [+]
  guard size, [+], [+], [+], [+], [+], [+], [+]
  inherit scheduling, [+]
  mutex kind, [+], [+]
  mutex type, [+]
  priority, [+], [+], [+], [+]
  queue size, [+], [+]
  scheduling, [+], [+], [+], [+], [+], [+]
  scheduling parameters, [+]
  scheduling policy, [+], [+], [+], [+], [+], [+], [+]
  scheduling policy attribute parameters, [+]
  scheduling priority, [+]
  stack size, [+], [+], [+], [+], [+], [+], [+]
  thread, [+]

Attributes object
  creating, [+], [+], [+]
  creating and initializing, [+]
  definition of, [+]
  deleting, [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


B

Background scheduling,  [+]
BLISS compiler
  generating reentrant code, [+]
Boss/worker model,  [+]
  work queue variation, [+]
Broadcasting a wakeup,  [+], [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


C

C compiler
  generating reentrant code, [+]
Cancel
  asynchronous delivery and exception handlers, [+], [+]
  delivery, [+], [+]
  enabling and disabling asynchronous delivery of, [+], [+]
  enabling and disabling delivery of, [+], [+], [+]
  obtaining noncancelable versions of cancelable routines, [+],
    [+]
  possible dangers of disabling, [+], [+], [+]
  requesting delivery of, [+], [+], [+]
  sending to a thread, [+], [+]
  setting current thread state, [+]
  setting current thread type, [+]

Cancelability
  asynchronous, [+], [+], [+]
  general, [+], [+]
  state, [+]
  type, [+]

Cancelability state
  thread, [+]
Cancelability type
  thread, [+]
Canceling a thread,  [+]
  See Thread, canceling
CATCH exception,  [+]
CATCH_ALL exception,  [+]
Characteristics of created condition variable
  specifying, [+], [+]

Characteristics of created mutex
  specifying, [+]
Characteristics of created object
  specifying, [+], [+], [+]
Cleanup routine
  establishing, [+], [+]
  executing, [+], [+]

Client,  [+]
cma.h,  [+], [+]
cma_debug,  [+]
cma_t_once data structure,  [+]
COBOL compiler
  generating nonreentrant code, [+]
Combination model,  [+]
Comparing two handles,  [+]

Compilers
  generating nonreentrant code, [+]
  generating reentrant code, [+]
Compiling for OpenVMS images,  [+], [+]
Condition handlers
  declaring, [+]

Condition variable,  [+]
  comparing to mutex, [+]
  creating, [+], [+], [+], [+]
  definition of, [+], [+], [+]
  deleting, [+], [+], [+], [+]
  signaling, [+]
  waiting for, [+], [+], [+], [+]
  waiting for a specified time, [+], [+], [+]

Condition variable attributes,  [+]
Condition variable attributes object
  creating, [+]
  deleting, [+], [+]
  initializing, [+]
Condition variables
  thread-safe, [+]

Context
  generating key value for, [+], [+], [+], [+]
  obtaining, [+], [+], [+], [+]
  per-thread, [+]
  setting, [+], [+], [+], [+]
  uses, [+]
  uses for, [+], [+], [+]

Copying a handle,  [+]

Creating
  attributes object, [+]
  condition variable attributes object, [+], [+]
  mutex attributes object, [+], [+]
  thread attributes object, [+], [+]
Creating a condition variable,  [+], [+], [+], [+]
Creating a mutex,  [+], [+], [+], [+]

Creating a thread,  [+], [+], [+]
  detached creation attribute, [+], [+], [+], [+]
  guardsize attribute, [+], [+], [+], [+], [+], [+]
  inherit scheduling attribute, [+], [+], [+], [+], [+],
    [+]
  priority attribute, [+], [+], [+], [+]
  scheduling parameters attribute, [+]
  scheduling policy attribute, [+], [+], [+], [+], [+],
    [+]
  scheduling policy attribute parameters, [+]
  stacksize attribute, [+], [+], [+], [+], [+], [+]

Creating detached threads,  [+], [+], [+], [+]
Creating per-thread context key value,  [+], [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


D

Data
  thread-specific, [+], [+]
Data structures
  cma_t_once, [+]
  pthread_once_t, [+], [+], [+]
Deadlocks
  how to avoid, [+]

Debugging a multithreaded program,  [+], [+], [+], [+]
Debugging threads
  on systems based on Windows NT software, [+]
Declaring a condition handler,  [+]
DECthreads Library routines,  [+]
Delaying execution of a thread,  [+], [+], [+]

Deleting
  attributes object, [+]
  condition variable attributes object, [+], [+]
  mutex attributes object, [+], [+]
  thread attributes object, [+]
Deleting a condition variable,  [+], [+], [+], [+]
Deleting a mutex,  [+], [+], [+]
Deleting a thread,  [+], [+], [+]
Deleting key
  pthread, [+], [+]

Delivery of alerts
  disabling, [+]
  disabling asynchronous delivery of, [+]
  enabling, [+]
  enabling asynchronous delivery of, [+]
  requesting, [+]
Delivery of cancels
  enabling and disabling, [+], [+]
  enabling and disabling asynchronous delivery of, [+]
  requesting, [+], [+], [+]

Dequeue,  [+]

Destroying
  readers/writer locks, [+]
  thread attributes object, [+]
Destroying a mutex,  [+]

Detaching thread attribute,  [+]
Digital Proprietary Interfaces: cma routines,  [+]
Digital Proprietary Interfaces: tis routines,  [+]
Digital UNIX,  [+]
Disabling asynchronous delivery of alerts,  [+]
Disabling asynchronous delivery of cancels,  [+]

Distributed system
  using threads in, [+]
DOS File Allocation Table (FAT) file system,  [+]
Dynamic memory,  [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


E

Enabling asynchronous delivery of alerts,  [+]
Enabling asynchronous delivery of cancels,  [+]
Enqueue,  [+]

Error termination of a thread,  [+], [+], [+], [+]
Errorcheck mutex,  [+]
Errors, reporting,  [+]

Example programs
  prime number search, [+]

Exceptions,  [+]
  CATCH, [+]
  catching, [+]
  CATCH_ALL, [+]
  condition handler causing to fail, [+]
  declaring and initializing, [+]
  defining a region of code to catch, [+]
  defining epilogue actions, [+]
  definition of, [+]
  determining current, [+]
  ENDTRY, [+]
  exporting error status, [+]
  FINALLY, [+], [+]
  importing error status, [+]
  introduction to, [+]
  mapping signals into, [+]
  matching, [+]
  naming convention for, [+]
  pthread_exc_get_status_np, [+]
  pthread_exc_matches_np, [+]
  pthread_exc_report_np, [+]
  pthread_exc_set_status_np, [+]
  raising, [+]
  reporting, [+]
  RERAISE, [+], [+], [+]
  reraising, [+]
  rules for modular use of, [+]
  signals reported as, [+]
  table listing pthread exceptions and meanings, [+]
  THIS_CATCH, [+]
  TRY, [+]

Expiration time
  obtaining, [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


F

Fast mutex,  [+], [+], [+]
FIFO (first-in/first-out) scheduling,  [+]
FINALLY exception,  [+], [+]
Fork
  handling, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


G

Global lock,  [+]
  using to avoid nonreentrant software, [+]
Global mutex
  locking, [+], [+], [+], [+]
  unlocking, [+], [+], [+], [+]
Guardsize attribute,  [+], [+], [+], [+], [+]
  obtaining, [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


H

Handlers
  declaring a condition handler, [+]
Handles,  [+]
  assigning to an object, [+]
  comparing, [+]
  copying, [+]
  obtaining for thread, [+]
Header files,  [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


I

Identifiers
  comparing, [+], [+]
Images
  compiling for OpenVMS, [+], [+]
  linking to OpenVMS, [+]
Inherit scheduling attribute,  [+], [+]
  obtaining, [+], [+]
  usefulness, [+], [+], [+]

Initialization
  one-time, [+], [+], [+], [+]
Initialization routines
  one-time, [+]
Initializing
  condition variable, [+], [+], [+], [+]
  readers/writer lock, [+]
  thread attributes object, [+]
  threads routines, [+]

INT suffix on DECthreads routines,  [+]
Internal errors, reporting,  [+]
Interrupt,  [+], [+], [+]
Interrupt handler
  inserting a queue element from, [+]
  waking a thread, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


K

Kernel threads
  effects of context switching, [+]
Key value
  deleting, [+], [+]
  generating for per-thread context, [+], [+], [+], [+]
  obtaining per-thread context for, [+], [+], [+], [+]
  setting per-thread context for, [+], [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


L

Lifetime
  definition of, [+]
Linking to OpenVMS images,  [+]
Lock
  global, [+]
Locking
  global mutex, [+], [+], [+], [+]
  readers locks, [+], [+]
  writer lock, [+], [+]
Locking a mutex,  [+], [+], [+], [+], [+], [+], [+],
   [+]
Locks
  readers/writer, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


M

Memory
  dynamic, [+]
  locking, [+], [+], [+], [+], [+], [+], [+]
  setting for a thread's stack, [+], [+]
  stack, [+]
  static, [+]
  types of, [+]
  unlocking, [+]

Multithreaded programming
  introduction, [+]
  potential problems, [+]
     complexity, [+]
     deadlocks, [+]
     nonreentrant routines, [+]
     priority inversion, [+]
     race conditions, [+]
  software models, [+]
     boss/worker, [+]
     combination, [+]
     pipelining, [+]
     work crew, [+]

Mutex,  [+]
  comparing to condition variable, [+]
  creating, [+], [+], [+]
  definition of, [+], [+], [+]
  deleting, [+], [+], [+]
  destroying, [+]
  errorcheck, [+]
  fast, [+], [+]
  global lock, [+]
  global unlock, [+]
  initializing, [+]
  locking, [+], [+], [+], [+], [+], [+], [+], [+]
  locking before signaling condition variable, [+]
  nonrecursive, [+], [+]
  normal, [+], [+]
  obtaining kind, [+]
  recursive, [+], [+], [+], [+]
  setting kind, [+]
  types of, [+]
  unlocking, [+], [+], [+], [+]

Mutex attributes,  [+]
  obtaining, [+]
Mutex attributes object
  creating, [+], [+]
  deleting, [+], [+]
  initializing, [+]
Mutexes
  thread-safe, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


N

Names,  [+]
  See Handles
Nonrecursive mutex,  [+], [+], [+], [+]
Nonreentrant code
  compilers that generate, [+]
Nonreentrant library packages
  calling, [+], [+], [+], [+]
Nonreentrant software
  using global lock to avoid, [+]
Normal mutex,  [+], [+]
Normal termination of a thread,  [+], [+], [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


O

One-time initialization routines,  [+]
OpenVMS Systems,  [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


P

PASCAL compiler
  generating reentrant code, [+]
Per-thread context,  [+]
  deleting key, [+]
  generating key value, [+]
  generating key value for, [+], [+], [+]
  obtaining, [+], [+], [+], [+]
  setting, [+], [+], [+], [+]
  uses for, [+], [+], [+], [+]

Pipelining model,  [+]

POSIX
  sigwait service, [+]
POSIX 1003.1c (pthread) routines,  [+]
POSIX 1003.4a (Draft 4) pthread routines,  [+]

Prime number search example,  [+]
Priority
  obtaining for thread, [+], [+]
  setting for thread, [+], [+], [+], [+]
Priority attribute,  [+], [+], [+], [+]
Priority inversion
  avoiding, [+]
  how to avoid, [+]

Process
  creation, [+]
  states, [+]
Processors
  causing thread to release control of, [+], [+], [+]
Programming
  synchronization errors, list of, [+]

pthread.h,  [+], [+]
pthread_debug,  [+]
pthread_exc.h,  [+], [+]
pthread_join routine,  [+]
pthread_join32 routine,  [+]
pthread_join64 routine,  [+]
pthread_once_t data structure,  [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


Q

Queues,  [+]
  creating, [+]
  creating an attributes object for, [+]
  deleting, [+]
  deleting an attributes object for, [+]
  inserting an element at the end of, [+], [+], [+]
  inserting an element at the front of, [+], [+]
  obtaining size of, [+]
  removing an element from, [+], [+]
  setting size of, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


R

Race conditions
  how to avoid, [+]
RAISE exception,  [+]
Readers locks
  locking, [+], [+]
  unlocking, [+]
Readers/writer locks,  [+]
  destroying, [+]
  initializing, [+]
Readers/writer routines,  [+]
Recursive mutex,  [+], [+], [+], [+]

Reentrant code
  See also thread-reentrant code
  compilers that generate, [+]
  necessary for multithreaded program, [+]
  nonreentrant routines (avoiding), [+]
Reporting errors,  [+]
  API, [+]
  internal, [+]

Requeue,  [+]
RERAISE exception,  [+], [+], [+]
Routines descriptions
  DECthreads Library routines, [+]
  Digital Proprietary Interfaces: cma routines, [+]
  Digital Proprietary Interfaces: tis routines, [+]
  POSIX 1003.1c (pthread) Routines, [+]
  POSIX 1003.4a (Draft 4) pthread routines, [+]
RR (round-robin) scheduling,  [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


S

Scheduling
  threads, [+]
Scheduling parameters
  getting for thread, [+]
  setting for thread, [+]
Scheduling parameters attribute,  [+]

Scheduling policy
  getting for thread, [+]
  obtaining for thread, [+], [+]
  setting for thread, [+], [+], [+]
Scheduling policy attribute,  [+], [+], [+], [+], [+]
  obtaining, [+], [+]
Scheduling policy attribute parameters,  [+]
Scheduling priority attribute,  [+]
Scheduling thread,  [+]

Scope
  definition of, [+]
Sending a signal,  [+]
Sequence number
  thread, [+]
Servers,  [+]
Shared memory,  [+]
Shared resources
  access, [+]
Shared variables,  [+]

Signal
  delivery, [+]
  sending to a thread, [+], [+]
Signal mask
  examining, [+]
  setting, [+]
Signaling a wake-up,  [+], [+], [+], [+], [+], [+],
   [+], [+]
Signals
  reasons to avoid signal handlers in a multithreaded program, [+]
  reported as exceptions, [+]

Software interrupts
  exceptions, [+]
Stack guard area
  location of, [+], [+]
Stack limit
  checking, [+]
Stack memory,  [+]

Stacks,  [+]
  changing minimum size of, [+], [+], [+]
  changing minimum size of guard area, [+]
  obtaining minimum size of, [+], [+], [+]
  obtaining minimum size of guard area, [+]
  overflow, [+]
  preventing and detecting overflow, [+], [+]
  routines for, [+]
  sizing, [+]

Stacksize attribute,  [+], [+], [+], [+], [+]
  obtaining, [+], [+]
Static memory,  [+]
Storage
  types of, [+]

Synchronization
  mutex, [+], [+], [+], [+]
Synchronization objects
  atomic queue, [+]
  condition variable, [+]
  join, [+]
  mutex, [+]
Synchronization, asynchronous
  coding for, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


T

Terminating threads
  normal, [+]
  premature successful completion, [+]
  without returning from start routine, [+]
Termination
  waiting for, [+], [+], [+]
Termination of a thread
  error, [+], [+], [+], [+]
  events that cause, [+], [+], [+]
  normal, [+], [+], [+], [+], [+]
  premature successful completion, [+], [+]
  without raising an exception, [+]
  without returning from start routine, [+], [+]

THIS_CATCH exception,  [+]

Thread
  See also Multithreaded programming, [+]
  sequence number, [+]
  signal to, [+]
Thread attributes,  [+]
Thread attributes object
  creating, [+]
  creating and initializing, [+]
  deleting, [+]
  destroying, [+]

Thread creation
  detached creation attribute, [+], [+], [+], [+]
  guardsize attribute, [+], [+], [+], [+], [+], [+]
  inherit scheduling attribute, [+], [+], [+], [+], [+],
    [+]
  priority attribute, [+], [+], [+], [+]
  scheduling parameters attribute, [+]
  scheduling policy attribute, [+], [+], [+], [+], [+],
    [+]
  scheduling policy parameters attribute, [+]
  stacksize attribute, [+], [+], [+], [+], [+], [+]

Thread-reentrant code
  definition of, [+]
Thread-safe code
  condition variables, [+]
  definition of, [+]
  mutexes, [+]
Thread-specific
  data, [+], [+]
Threading library
  asynchronous, [+]

Threads
  alerting, [+]
  binding to a CPU, [+], [+]
  canceling, [+], [+], [+]
     cancelability state, [+]
     cancelability type, [+]
  creating, [+], [+], [+], [+]
  creating detached threads, [+], [+], [+], [+]
  definition of, [+]
  delaying execution of, [+], [+], [+]
  deleting, [+], [+], [+], [+]
  detaching, [+], [+], [+], [+]
  error termination, [+], [+], [+], [+]
  events that cause termination, [+], [+], [+]
  getting scheduling policy and parameters, [+]
  initializing, [+]
  nonreentrant routines (avoiding), [+]
  normal termination, [+], [+], [+], [+], [+]
  obtaining current priority of, [+], [+]
  obtaining current scheduling policy of, [+], [+]
  obtaining handle of, [+]
  obtaining identifier of, [+], [+], [+]
  per-thread context of, [+], [+], [+], [+]
  reentrant code necessary, [+]
  releasing processor, [+], [+], [+]
  scheduling, [+], [+]
     inherit scheduling attribute, [+]
     scheduling policy attribute, [+]
     scheduling priority attribute, [+]
  setting current cancelability state, [+]
  setting current cancelability type, [+]
  setting current priority of, [+], [+]
  setting current scheduling policy and parameters of, [+]
  setting current scheduling policy and priority of, [+], [+]
  signal mask, [+]
  starting, [+]
  states, [+]
  terminating, [+], [+]
     normal termination, [+]
  termination, normal, [+]
  unlocking global mutex, [+]
  waiting for a mutex, [+], [+], [+]
  waiting for another to terminate, [+]
  waiting for the termination of, [+], [+], [+]
  waiting on mutex, [+]
  waking, [+], [+], [+], [+], [+], [+], [+], [+],
    [+], [+], [+], [+]
  yielding processor to another thread, [+], [+], [+]

Threads identifier
  comparing, [+], [+]
Throughput (default) scheduling,  [+]
Time
  adding interval to current time, [+], [+], [+]
  obtaining expiration, [+], [+], [+]
Timeslice
  definition of, [+]
TRY/ENDTRY block restriction,  [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


U

UNIX,  [+]
Unlocking
  readers locks, [+]
  writer lock, [+]
Unlocking a global mutex,  [+], [+], [+], [+]
Unlocking a mutex,  [+], [+], [+], [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


W

Waiting for condition variable,  [+], [+], [+], [+], [+],
   [+], [+]
Waking a thread,  [+], [+], [+], [+], [+], [+], [+],
   [+], [+], [+], [+], [+]
Win32 API,  [+]
WinDbg debugger,  [+]

Windowing system
  using threads in, [+]
Windows NT,  [+]

Work crew model,  [+]
Work queues
  variation of boss/worker model, [+]
Writer lock
  locking, [+], [+]
  unlocking, [+]


Click letter for quick access:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


Y

Yielding to another thread,  [+], [+], [+]



[Return to Bookshelf] [Contents] [Previous Section] [Help]