マルチスレッドのプログラミング

<thread.h> または <pthread.h>

インクルードファイル <thread.h> には、Solaris スレッドの関数の宣言が含まれています。Solaris スレッドの任意の関数を呼び出すには、プログラムで <thread.h> をインクルードする必要があります。このファイルを使用すると、以前の Solaris ソフトウェアのリリースと互換性のあるコンパイルされたコードを生成できます。

インクルードファイル <pthread.h> は pthread の関数の宣言を含んでおり、プログラムで pthread を使用する場合に必要になります。

アプリケーションで <thread.h><pthread.h> の両方をインクルードすることによって、同じアプリケーション内に Solaris スレッドと POSIX スレッドを混在させることができます。その場合は、リンクおよびコンパイル時に、pthread の API でリンクするための -lpthread フラグを指定する必要があります。

-mt を使用した場合は、Solaris スレッドの API が自動的にリンクされます。-lthread を明示的に指定する代わりに、常に -mt オプションを使用してください。pthread を使用するには、リンクのコマンド行で -mt オプションと -lpthread オプションを指定します。libpthread ライブラリによって libthread へのインタフェースが提供されるため、pthread を使用する場合も libthread が引き続き必要です。