Debugging, Profiling, Code improvement tools
  • Introduction
  • Chapter1: 追蹤問題
    • 1.1.找出錯誤來源
  • Chapter2: 解決問題
    • 2.1.Check list
      • 2.1.1.確認前後條件
  • Chapter3: 錯誤訊息
    • 3.1.python
      • 'charmap' codec can't decode byte 0x8f in position 17: character maps to <undefined>
  • Chapter4:版本管理工具
    • 4.1.Git
      • 4.1.1.Working tree, Index/Cache, Repository and Object
      • 4.1.2.commit
      • 4.1.3.cherry-pick
      • 4.1.4.rebase
    • 4.2.TortoiseGit
      • 4.2.1.bisect
      • 4.4.2.reflog & reset
      • 4.2.3.blame
  • Chapter5: 除錯工具
    • 5.1.Visual studio
      • 5.1.1.輸出debug訊息
      • 5.1.2.中斷點
      • 5.1.3.載入符號, 檢視堆疊
      • 5.1.4.追蹤點
      • 5.1.5.單步執行程式
      • 5.1.6.日誌
      • 5.1.7.靜態程式分析
    • 5.2. WinDbg
      • 5.2.1.安裝WinDbg
      • 5.2.2.設定project及symbol path
      • 5.2.3.分析.dmp file
    • 5.3.API
      • 5.3.1.核心傾印
  • Chapter6: 效能分析工具
    • 6.1.Introduction
    • 6.2.Windows
      • 6.2.1.效能分析指標
      • 6.2.2.Windows Performance Monitor
      • 6.2.3.Process monitor
      • 6.2.4.Windows Performance Toolkit
    • 6.3.C++ project
      • 6.3.1.SMART BEAR AQ Time
    • 6.4.Python project
      • 6.4.1.cProfile, snakeviz
  • Chapter7: 程式碼優化工具
    • 7.1.Python
      • 7.1.1.vulture
Powered by GitBook
On this page
  • 1.用途
  • 2.用法

Was this helpful?

  1. Chapter5: 除錯工具
  2. 5.1.Visual studio

5.1.4.追蹤點

Previous5.1.3.載入符號, 檢視堆疊Next5.1.5.單步執行程式

Last updated 5 years ago

Was this helpful?

1.用途

  • 除了有中斷點的功能, 也可以在中斷時印出指定的訊息

2.用法

  • 1.在想要中斷/印出訊息的地方, 按右鍵 -> breakpoint -> Insert Tracepoint

  • 2.設定視窗

    • 這邊可以在輸入的地方輸入想要在output視窗印出的訊息, 可分為兩種:

      • 1.預設訊息種類

        • a.在輸入框中輸入address: $ADDRESS, caller: $CALLER, stack: $CALLSTACK, function: $FUNCTION, pid: $PID, pname: $PNAME, tid: $TID, tanme: $TNAME, 取消Continue execution並按下OK

            $ADDRESS: 當前指令的位置
            $CALLER: 上一層函式名稱
            $CALLSTACK: 當前的堆疊    
            $FUNCTION: 當前的函式名稱
            $PID: Process Id
            $PNAME: Process 名稱
            $TID: Thread Id
            $TNAME: Thread 名稱

        • b.DEBUG -> Start Debugging

        • c.檢視output視窗

      • 2.區域變數

        • a.在輸入框中輸入變數, 並以中括號刮起來, 嘗試勾選Continue execution並按下OK

        • b.DEBUG -> Start Debugging

        • c.檢視output視窗