HP OpenVMS Systems Documentation

Content starts here

Guide to the POSIX Threads Library


Previous Contents Index

F
FINALLY macro #1
FINALLY macro #2
First-in/first-out (FIFO) scheduling policy
Foreground scheduling policy
Fork handlers (Tru64 UNIX)
Functional models
    for multithreaded programming
        boss/worker
        combinations
        pipelining
        work crew
G
$GETJPI system service
    MULTITHREAD item code
$GETJPI system service (OpenVMS)
    MULTITHREAD item code
Global lock
    See POSIX Threads, global lock
Granularity
    avoiding errors
    compiler support for
    defined
    determinants of
    members of composite data objects
    word tearing
Guardsize attribute
    of thread attributes object #1
    of thread attributes object #2
        obtaining
        setting
H
Handlers
    cleanup
    cleanup for threads
    condition (OpenVMS)
    fork (Tru64 UNIX)
    interrupt #1
    interrupt #2
Header files
    POSIX Threads
$HIBER system service
$HIBER system service (OpenVMS)
I
I/O completion #1
I/O completion #2
Images (OpenVMS)
    compiling for POSIX Threads
    linking POSIX Threads-based
Inherit scheduling attribute
    of thread attributes object
        obtaining
        setting
Interfaces
    to POSIX Threads
        Compaq proprietary CMA (cma) #1
        Compaq proprietary CMA (cma) #2
        in C language
        in languages other than C
        obsolete
        POSIX.1 (pthread)
        POSIX 1003.4a/Draft 4 (d4) #1
        POSIX 1003.4a/Draft 4 (d4) #2
        thread-independent services (tis) #1
        thread-independent services (tis) #2
        thread-independent services (tis) #3
        undocumented but supported
Interrupt handlers
    for threads #1
    for threads #2
Interrupt handlers, for threads #1
Interrupt handlers, for threads #2
K
Kernel threads
    enabling in existing OpenVMS images
    OpenVMS linker options
    querying use of
    querying use of (OpenVMS)
    relation to POSIX Threads user threads
    relation to user threads
        under OpenVMS
        under Tru64 UNIX
    virtual processors for
    virtual processors for (OpenVMS)
L
Ladebug debugger (Tru64 UNIX)
Libraries
    for POSIX Threads
    lacking thread safety #1
    lacking thread safety #2
    shared (Tru64 UNIX)
        linking with POSIX Threads
        using with POSIX Threads
    thread-safe #1
    thread-safe #2
Linking applications
    under OpenVMS
Linking applications, under Tru64 UNIX
Lock acquisition
Locks
    global
        See POSIX Threads, global lock
    read-write
M
Macros
    CATCH
    CATCH_ALL
    FINALLY #1
    FINALLY #2
    PTHREAD_COND_INITIALIZER #1
    PTHREAD_COND_INITIALIZER #2
    PTHREAD_COND_INITWITHNAME_NP
    PTHREAD_MUTEX_INITIALIZER #1
    PTHREAD_MUTEX_INITIALIZER #2
    PTHREAD_MUTEX_INITWITHNAME
    PTHREAD_ONCE_INIT
    RAISE macro
    RERAISE #1
    RERAISE #2
    TRY
        restrictions
Memory
    dynamic
    sharing
    stack
        identifying overflow
    static
    synchronizing threads' access to
Multiprocessing systems
    use of threads under
Multithreaded programming
    asynchronous programming techniques
    asynchronous thread execution
    cancelation point routines
    cancelation points
    dependencies upon other libraries
    dependencies upon other libraries
        multiple thread libraries unsupported
    dependencies upon other libraries
        not thread-safe
        reentrant
        thread-safe
    detecting error conditions
    example programs
        asynchronous user interface
        prime number search
        thread cancelation
    functional models
        boss/worker
        combinations
        pipelining
        work crew
    managing a thread's stack
    one-time initialization #1
    one-time initialization #2
    one-time initialization #3
    potential issues
        deadlocks
        dependence upon nonreentrant software
        dependence upon nonreentrant software
        priority inversion
        program complexity
        race conditions
    programming errors
        initializing objects after thread creation
        passing stack local data
        thread scheduling as thread synchronization
    scheduling threads
        interaction with thread contention scope
        priority inversion
        real-time
    sharing memory
    signals (Tru64 UNIX)
        avoiding use of
    synchronizing memory access #1
    synchronizing memory access #2
        avoiding deadlocks
        avoiding race conditions
    synchronizing memory access
        distinguishing mutexes and condition variables
    synchronizing memory access
        signaling a condition variable
    using memory
        dynamic
        stack
        static
    writing thread-safe libraries
    yielding thread execution #1
    yielding thread execution #2
    yielding thread execution #3
Mutex attributes objects #1
Mutex attributes objects #2
    creating
    destroying
    initializing
    mutex type attribute
        obtaining
        setting
    obtaining the value of the process-shared attribute
    setting the value of the process-shared attribute
Mutex type attribute
    of mutex attributes object
Mutexes
    creating #1
    creating #2
    destroying #1
    destroying #2
    distinguishing from condition variables
    in thread-safe library code
    initializing #1
    initializing #2
    locking #1
    locking #2
    locking #3
    locking #4
    locking, before signaling a condition variable
    naming #1
    naming #2
    operations on
    POSIX Threads global
        locking #1
        locking #2
        unlocking #1
        unlocking #2
    process-shared
    protecting call to code lacking thread safety
    types of
        default
        errorcheck
        normal
        recursive
    under the thread-independent services (tis) interface
    unlocking #1
    unlocking #2
    using static data before release of


Previous Next Contents Index