簡體   English   中英

調試Go with GDB時的奇怪行為

[英]Strange behavior when debugging Go with GDB

我有一個Go程序,我正在調試使用GDB(也是Eclipse / Goclipse,但它使用GDB,所以它都是一樣的)。 偶爾,當我next告訴GDB時,它就像我告訴它continuefinish 這就像可執行文件中缺少堆棧/幀/ etc信息一樣。 救命?

gdb -v給出:

版權所有(C)2013 Free Software Foundation,Inc。許可證GPLv3 +:GNU GPL版本3或更高版本http://gnu.org/licenses/gpl.html這是免費軟件:您可以自由更改和重新分發它。 在法律允許的范圍內,不提供任何擔保。 輸入“show copying”和“show warranty”了解詳細信息。 此GDB配置為“x86_64-apple-darwin13.1.0”。 有關錯誤報告說明,請參閱: http//www.gnu.org/software/gdb/bugs/

go -v給出:

去版本go1.2.1 darwin / amd64

兩者都在OSX.9下安裝了MacPorts

這不僅僅是OSX。 gdb並不真正理解,也不能總是遵循goroutines,因為它們可以跨操作系統線程進行調度。

您可以隨后嘗試使用另一個斷點再次捕獲執行,但我認為您還可以執行其他操作。

GDB對堆棧跟蹤和斷點仍然有用,但是在可預見的將來,單步執行代碼並不能可靠地工作。 golang dev郵件列表中有關於不斷改進gdb而不是放棄它以支持新事物的討論。 但沒有發布任何公告。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM