Oracle® Solaris Studio 12.4: dbx コマンドによるデバッグ

印刷ビューの終了

更新: 2015 年 1 月
 
 

マルチスレッドデバッグについて

dbx は、libthread.so が利用されているかどうかを検出することによって、マルチスレッドプログラムを認識します。プログラムは、-lthread または -mt でコンパイルされることによって明示的に、あるいは -lpthread でコンパイルされることによって暗黙的に libthread.so を使用します。

マルチスレッドプログラムを検出すると、dbx は、/usr/lib にあるスレッドデバッグのための特殊なシステムライブラリである libthread_db.so をロードしようとします。

dbx は同期的に動作するため、いずれかのスレッドまたは軽量プロセス (LWP) が停止すると、その他のスレッドおよび LWP もすべて同様に停止します。 この動作は、「世界停止 (stop the world)」モデルと呼ばれる場合があります。


注 -  マルチスレッドプログラミングと LWP については、Oracle Solaris のマルチスレッドプログラミングに関するガイドを参照してください。