• <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 葉子 閱讀(1913) 評論(0)  編輯 收藏 引用 所屬分類: Unix

            久久综合鬼色88久久精品综合自在自线噜噜 | 国产精品99久久久久久宅男小说| 久久www免费人成精品香蕉| 天堂无码久久综合东京热| 国产成年无码久久久免费| 97精品久久天干天天天按摩| 久久人人超碰精品CAOPOREN| 亚洲AV日韩精品久久久久| 久久久久亚洲爆乳少妇无| 亚洲AV无码久久| 久久国产三级无码一区二区| 亚洲人成伊人成综合网久久久| 91久久成人免费| 精品久久久久久亚洲精品 | 精品久久久久久无码不卡| .精品久久久麻豆国产精品| 久久天天婷婷五月俺也去| 国产精品内射久久久久欢欢 | 欧美熟妇另类久久久久久不卡 | 久久久久久国产精品美女| 亚洲综合久久综合激情久久| 欧洲人妻丰满av无码久久不卡| 亚洲国产精品嫩草影院久久| 久久综合九色综合97_久久久| 色8激情欧美成人久久综合电| 久久99精品久久久久久齐齐| 麻豆成人久久精品二区三区免费| 国产精品内射久久久久欢欢| 久久se精品一区二区影院| 久久久久女教师免费一区| 国产精品久久亚洲不卡动漫| 一本色道久久HEZYO无码| 亚洲午夜无码AV毛片久久| 久久综合一区二区无码| 精品国产一区二区三区久久蜜臀| 国产精品久久久福利| 国产精品免费福利久久| 99久久777色| 国产精品热久久无码av| 久久精品亚洲男人的天堂| 国产999精品久久久久久|