Bitcoin-Core-Development
我什麼時候會使用 USDT 跟踪而不是調試?它們如何相互比較和互補?
我開始了解 USDT 追踪,0xB10C於 2021 年 5 月舉辦了一個PR 審查俱樂部,並在這篇博文中進行了介紹。
我仍然有點不清楚什麼時候可以使用這個工具(假設我學會瞭如何有效地使用它!)以及它如何補充或比較一般的調試。
當您達到調試器可以做的極限時,是否可以使用它?
0xB10C 在Mastodon上回答了這個問題。歡迎其他答案。
我們在我們的使用者空間應用程序(比特幣核心)中實現我們自己的跟踪點,並編寫自定義腳本來深入了解我們認為重要的部分。
通過 USDT 進行跟踪和調試是兩件截然不同的事情。您可以通過 USDT 進行跟踪作為搜尋錯誤的一部分,但不能用跟踪代替調試。
有時調試,如單步調試程式碼和使用 GDB 等查看狀態,是您手動執行的操作。
使用 USDT 完成的跟踪允許您以程式方式使用內部狀態。您可以自動對某些狀態做出反應。
這可以被認為是更豐富、更深入的調試。您可以允許程式碼連續執行並仍然對其進行操作,而不是斷點的停止、啟動性質。或者您可以使用調試定位錯誤,然後通過 USDT 跟踪探索錯誤的影響。
調試只是 USDT 應用程序之一。跟踪點也可用於評估/審查更改,就像我對Erlay 與主節點儀表板所做的一樣。或用於一般監控、異常檢測、基準測試和測試。