• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            elva

            gdb多線程調試1

            gdb對于多線程程序的調試有如下的支持:
              
              線程產生通知:在產生新的線程時, gdb會給出提示信息
              (gdb) r
              Starting program: /root/thread 
              [New Thread 1073951360 (LWP 12900)] 
              [New Thread 1082342592 (LWP 12907)]---以下三個為新產生的線程
              [New Thread 1090731072 (LWP 12908)]
              [New Thread 1099119552 (LWP 12909)]
              
              查看線程:使用info threads可以查看運行的線程。
              (gdb) info threads
               4 Thread 1099119552 (LWP 12940) 0xffffe002 in ?? ()
               3 Thread 1090731072 (LWP 12939) 0xffffe002 in ?? ()
               2 Thread 1082342592 (LWP 12938) 0xffffe002 in ?? ()
              * 1 Thread 1073951360 (LWP 12931) main (argc=1, argv=0xbfffda04) at thread.c:21
              (gdb) 
              
              
              注意,行首的藍色文字為gdb分配的線程號,對線程進行切換時,使用該該號碼,而不是上文標出的綠色數字。
              
              另外,行首的紅色星號標識了當前活動的線程
              
              切換線程:使用 thread THREADNUMBER 進行切換,THREADNUMBER 為上文提到的線程號。下例顯示將活動線程從 1 切換至 4。
              (gdb) info threads
               4 Thread 1099119552 (LWP 12940) 0xffffe002 in ?? ()
               3 Thread 1090731072 (LWP 12939) 0xffffe002 in ?? ()
               2 Thread 1082342592 (LWP 12938) 0xffffe002 in ?? ()
              * 1 Thread 1073951360 (LWP 12931) main (argc=1, argv=0xbfffda04) at thread.c:21
              (gdb) thread 4
              [Switching to thread 4 (Thread 1099119552 (LWP 12940))]#0 0xffffe002 in ?? ()
              (gdb) info threads
              * 4 Thread 1099119552 (LWP 12940) 0xffffe002 in ?? ()
               3 Thread 1090731072 (LWP 12939) 0xffffe002 in ?? ()
               2 Thread 1082342592 (LWP 12938) 0xffffe002 in ?? ()
               1 Thread 1073951360 (LWP 12931) main (argc=1, argv=0xbfffda04) at thread.c:21
              (gdb) 
              
              
               以上即為使用gdb提供的對多線程進行調試的一些基本命令。另外,gdb也提供對線程的斷點設置以及對指定或所有線程發布命令的命令。
              
               初次接觸gdb下多線程的調試,往往會忽視gdb中活動線程的概念。一般來講,在使用gdb調試的時候,只有一個線程為活動線程,如果希望得到其他的線程的輸出結果,必須使用thread命令切換至指定的線程,才能對該線程進行調試或觀察輸出結果。


            posted on 2010-08-02 11:41 葉子 閱讀(1905) 評論(0)  編輯 收藏 引用 所屬分類: Unix

            伊人久久大香线蕉影院95| 四虎国产精品成人免费久久| 久久久久久精品免费看SSS | www性久久久com| 日韩精品久久久久久| 亚洲婷婷国产精品电影人久久| 亚洲日韩欧美一区久久久久我| 久久精品国产亚洲AV高清热| 91久久精品无码一区二区毛片| 一级做a爰片久久毛片免费陪| 69久久夜色精品国产69| 久久久WWW成人免费精品| 亚洲欧美日韩精品久久亚洲区| 久久久久久久久无码精品亚洲日韩 | 精品一二三区久久aaa片| 欧美亚洲国产精品久久蜜芽| 欧美伊人久久大香线蕉综合| 久久亚洲国产午夜精品理论片| 伊人久久大香线焦AV综合影院| 久久精品国产亚洲Aⅴ蜜臀色欲| 婷婷综合久久中文字幕蜜桃三电影| 久久国产热这里只有精品| 久久精品国产亚洲AV无码娇色| 99久久免费国产精品特黄| 精品久久久无码中文字幕| 久久精品国产精品亚洲毛片| 久久中文字幕精品| 久久www免费人成看国产片| 久久99国产精品久久| 亚洲欧美成人综合久久久| 久久精品无码一区二区WWW | 97精品伊人久久久大香线蕉| 精品熟女少妇a∨免费久久| 天天躁日日躁狠狠久久| 2021国产精品午夜久久| 久久人人添人人爽添人人片牛牛| 理论片午午伦夜理片久久 | 性做久久久久久久久久久| 国产综合成人久久大片91| 91精品婷婷国产综合久久 | 久久青青草原亚洲av无码|