Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

Guide to DECthreads


Previous Contents Index

R
Race conditions
    among threads
    avoiding
    word tearing
RAISE macro
Read-write lock attributes objects
    creating
    destroying
    get process-shared attribute value
    set process-shared attribute value
Read-write locks #1
Read-write locks #2
    attributes
    changing object name in
    creating #1
    creating #2
    DECthreads tis interface routines for
    destroying #1
    destroying #2
    destroying #3
    initializing #1
    initializing #2
    initializing #3
    locking
        for read access #1
        for read access #2
        for write access #1
        for write access #2
    locking for read access
    locking for read access without waiting
    locking for write access
    locking for write access without waiting
    obtaining object name
    process-shared
    thread priority
    under the DECthreads thread-independent services (tis) interface
    unlocking
        for read access
        for write access
    using in thread-safe library code
    writer precedence
Read-write locks attributes objects
    initializing
Recursive mutexes
Reentrant code
    required for multithreaded programming
    required for thread-safe code
    See also Thread-reentrant code
RERAISE macro #1
RERAISE macro #2
Round-robin (RR) scheduling policy
S
Scheduling parameters
    of threads
        getting
        setting
Scheduling parameters attribute
    of thread attributes object
        getting
        setting
Scheduling policy attribute
    of thread attributes object
        getting
        setting
Scheduling priority attribute
    of thread attributes object
sched_get_priority_max() routine
sched_get_priority_min() routine
sched_yield() routine
Sequence numbers
    See Thread sequence numbers
Shared memory
    using from threads
Signal masks (DIGITAL UNIX)
    See Thread signal masks
Signals (DIGITAL UNIX)
    per-thread usage
    synchronous
        reported as exceptions
sigwait() routine
sigwait() service (DIGITAL UNIX)
Stack address attribute
    of thread attributes object
        getting
        setting
Stack memory
    using from threads
Stacks
    of threads
        See Thread stacks
Stacksize attribute
    of thread attributes object
        getting
        setting
Static memory
    using before release of mutex
    using from threads
Status exceptions
Synchronization objects
    condition variables
    mutexes
    read-write locks
    stack-based
        static initialization inappropriate for
    static initialization of
Synchronous cancelation
    of threads
        cleanup from
Synchronous thread cancelation
    cleanup from
SYSGEN
    MULTITHREAD parameter
SYSGEN (OpenVMS)
    MULTITHREAD parameter
System contention scope #1
System contention scope #2
    of threads
System services
    cancelability from DECthreads #1
    cancelability from DECthreads #2
T
THIS_CATCH exception object
Thread attributes objects
    cancelability state attribute
        setting #1
        setting #2
    cancelability type attribute
        setting
    contention scope attribute #1
    contention scope attribute #2
    contention scope attribute #3
    creating
    destroying
    detachstate attribute #1
    detachstate attribute #2
    guardsize attribute #1
    guardsize attribute #2
    guardsize attribute #3
    guardsize attribute #4
    guardsize attribute #5
    guardsize attribute #6
    inherit scheduling attribute #1
    inherit scheduling attribute #2
    inherit scheduling attribute #3
    initializing
    naming #1
    naming #2
    scheduling parameters #1
    scheduling parameters #2
    scheduling policy attribute #1
    scheduling policy attribute #2
    scheduling policy attribute #3
    scheduling priority attribute
    setting attributes in
    stack address attribute #1
    stack address attribute #2
    stack address attribute #3
    stacksize attribute #1
    stacksize attribute #2
    stacksize attribute #3
Thread-independent services (tis) interface #1
Thread-independent services (tis) interface #2
    condition variables
    features of
    mutexes
    of DECthreads
    performance of routines
    read-write locks
    run-time linkages to routines
    summary of routines
    thread-specific data
Thread objects
    naming #1
    naming #2
Thread-reentrant code
Thread-safe code
    in libraries
    requires reentrant compilation
    using condition variables
    using mutexes
    using read-write locks
    using thread-specific data
Thread sequence numbers
    getting
Thread signal masks (DIGITAL UNIX)
    getting
    setting
Thread-specific data
    keys
        creating #1
        creating #2
        destroying #1
        destroying #2
        getting #1
        getting #2
        naming #1
        naming #2
        setting #1
        setting #2
    under the DECthreads thread-independent services (tis) interface
    using in thread-safe library code
Thread-specific data keys
    naming #1
    naming #2
Thread stacks
    default size of
        under OpenVMS
    diagnosing overflow
    identifying overflow of #1
    identifying overflow of #2
    managing
    minimum size of
        under OpenVMS
    requesting absolute size of
    setting the origin address
    size of
        determining
        requesting absolute
    tracing
    using a stack guard area #1
    using a stack guard area #2
        under DIGITAL UNIX
THREADCP tool
THREADCP tool (OpenVMS)
Threads
    advantages of
    attributes of
    avoiding nonreentrant routines
    cancelability state
    cancelability type
    canceling #1
    canceling #2
        asynchronously
        code example
        control of
        delivery of cancelation request
        exception-based implementation
        PTHREAD_CANCELED return value
        synchronously
        whether enabled
    changes of state
    cleanup
        from asynchronous cancelation
        from synchronous cancelation
    cleanup handlers #1
    cleanup handlers #2
    cleanup handlers #3
    concurrency level #1
    concurrency level #2
    contention scope
    context-switching
        in kernel
        in user mode
    creating #1
    creating #2
    deadlocks among
    delaying execution of
    delivering cancelation requests
    destroying #1
    destroying #2
    detaching #1
    detaching #2
    executing
    granularity considerations
    identifiers
        comparing
        getting #1
        getting #2
    joining with another thread #1
    joining with another thread #2
    locking mutexes #1
    locking mutexes #2
    on multiprocessor systems
    one-time initialization of #1
    one-time initialization of #2
    one-time initialization of #3
    overview of
    priority inversion among
    process contention scope
    process-shared synchronization objects
    race conditions among
    reentrant code for
    scheduling
        alternative policies
        alternative priorities
        calculating priority
        effects of scheduling policy
        inheriting attributes
        issues
        real-time (DIGITAL UNIX)
    scheduling parameters
        getting
        setting
    See also Multithreaded programming
    sending signals to
    sequence numbers
        getting
    signal masks for (DIGITAL UNIX)
        getting
        setting
    starting
    synchronizing memory access
    system contention scope
    terminating #1
    terminating #2
        due to error
        normally
        series of actions #1
        series of actions #2
        via pthread_exit() routine
    thread-specific data
    time slicing
    unlocking DECthreads global mutex
    unlocking mutexes #1
    unlocking mutexes #2
    unlocking the DECthreads global mutex
    using a stack guard area
    using dynamic memory
    using shared memory
    using stack memory
    using static memory
    waiting for another thread to terminate #1
    waiting for another thread to terminate #2
    waiting on mutexes
    wakeups for
        broadcasting #1
        broadcasting #2
        signaling #1
        signaling #2
        signaling #3
    yielding to another thread
Throughput scheduling policy
Time
    expiration
        obtaining
Time slicing
    of threads
tis interface
    See Thread-independent services (tis) interface
tis_cond_broadcast() routine
tis_cond_destroy() routine
tis_cond_init() routine
tis_cond_signal() routine
tis_cond_wait() routine
    using
tis_getspecific() routine
tis_key_create() routine
tis_key_delete() routine
tis_lock_global() routine
    using
tis_mutex_destroy() routine
tis_mutex_init() routine
    using
tis_mutex_lock() routine
tis_mutex_trylock() routine
tis_mutex_unlock() routine
tis_once() routine
tis_read_lock() routine
    using
tis_read_trylock() routine
    using
tis_read_unlock() routine
tis_rwlock_destroy() routine
    using
tis_rwlock_init() routine
    using
tis_self() routine
tis_setcancelstate() routine
tis_setspecific() routine
tis_testcancel() routine
    using
tis_unlock_global() routine
    using
tis_write_lock() routine
    using
tis_write_trylock() routine
    using
tis_write_unlock() routine
TRY macro
    restrictions
Two-level scheduling
    under DIGITAL UNIX
    under OpenVMS Alpha


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
6101PRO_INDEX_003.HTML