Open System Services Programmer's Guide

If a thread is created, it does not inherit its parent's transaction; the created thread's transaction
context is nil.
If a thread terminates or is destroyed while it has an active transaction, that transaction is then
inaccessible from the process. If cancellation is a possibility, use exception handlers for
pthread_cancel_e. Alternatively, use the pthread_cleanup_push() and
pthread_cleanup_pop() functions to ensure that the transaction is terminated if the thread
exits or is cancelled.
If a transaction is aborted by either an operator, network partition, or another process, an
error is reported when the initiating thread attempts to operate on the transaction.
A process using the TMF transaction jacket routines must not call:
The TMF procedures BEGINTRANSACTION, ABORTTRANSACTION, ENDTRANSACTION,
or RESUMETRANSACTION
The SQL/MP BEGIN-WORK and COMMIT-WORK procedures
A process can perform up to the default of 100 concurrent transactions, with up to 1000
transactions maximum declared using the spt_setTMFConcurrentTransaction()
function. If the maximum is exceeded, a call to the spt_setTMFConcurrentTransaction()
function fails, returning error number 83 (too many transactions).
Reference Pages for Thread Functions
For full syntax and usage information about the Standard POSIX Threads functions, see the Open
System Services System Calls Reference Manual.
Full reference and syntax information for the SERVERCLASS_SEND and TMF transaction demarcation
jacket routines is available online in the OSS environment using the man command.
Standard POSIX Threads does not support every thread function listed in the reference pages; for
example, the various pthread_rwlock, pthread_nsg, pthread_rad, and pthread_exc
functions are not part of the Standard. Many of the supported functions are changed as well.
Differences between the previous standard and the current standard are described in the Open
System Services Porting Guide.
All the thread functions are listed in Appendix A: Documented OSS Functions (page 438) and
Appendix C (page 500).
Threaded Application Examples
The following example application creates a threaded time-of-day server socket that listens for
connections and upon connection, creates a thread to handle the connection.
Reference Pages for Thread Functions 335