JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Multithreaded Programming Guide     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information


1.  Covering Multithreading Basics

2.  Basic Threads Programming

3.  Thread Attributes

4.  Programming with Synchronization Objects

5.  Programming With the Oracle Solaris Software

6.  Programming With Oracle Solaris Threads

7.  Safe and Unsafe Interfaces

8.  Compiling and Debugging

Setting Up the Oracle Solaris Environment for Developing Multithreaded Applications

Compiling a Multithreaded Application

Preparing for Compilation

Choosing Oracle Solaris or POSIX Threads

Including <thread.h> or <pthread.h>

Compiling and Linking a Multithreaded Program

Compiling and Linking in the POSIX Threads Environment

Compiling and Linking in the Oracle Solaris Threads Environment

Compiling and Linking in a Mixed Threads Environment

Linking With -lrt for POSIX Semaphores

Alternate Threads Library

Debugging a Multithreaded Program

Common Oversights in Multithreaded Programs

Tracing and Debugging with DTrace

Profiling with Performance Analyzer

Detecting Data Races and Deadlocks Using Thread Analyzer

Using dbx

Tracing and Debugging With the TNF Utilities

Using truss

Using mdb

9.  Programming Guidelines

A.  Extended Example: A Thread Pool Implementation


Alternate Threads Library

The Solaris 8 release introduced an alternate threads library implementation that is located in the directories /usr/lib/lwp (32-bit) and /usr/lib/lwp/64 (64-bit). In the Solaris 9 release, this implementation became the standard threads implementation found in /usr/lib and /usr/lib/64. Effective with the Oracle Solaris 10 release, all threads functionality has been moved into libc and no separate threads library is required. The /usr/lib/lwp directories are maintained for compatibility of Solaris 8 applications.