01_GoLand debug時出現Connected并且程式卡住的問題
環境:win10、go version go1.19.4 windows/amd64、GoLand 2020.3.5 x64
現象 : 在 debug 模式下運行專案,打上斷點后,可以進入斷點位置,也可以跳轉到下個斷點,但是,在逐步執行時,會發生卡住不動的情況,并且控制臺提示 Connected

解決思路:
1、懷疑是分配給GoLandsh的記憶體太小,于是打開了GoLand的安裝目錄下的 goland.exe.vmoptions 檔案 修改最大記憶體樹和最小記憶體數-Xmx、-Xms,這兩個值可以根據自己電腦的記憶體大小來適當的分配,我這里分別是 8192m 和 4096m(雖然我的記憶體只要16G)
-Xms4096m
-Xmx8192m
修改后回應確實速度確實提高了,但是,問題仍然存在
2、百度,發現有的博主說,是GoLand自帶的debug程式有些問題,需要自己裝一個debug應用,再讓GoLand來通過這個應用執行debug就可以解決了,方法如下:
命令列打開, 安裝了 git的同學可以直接執行一下命令,
git clone https://github.com/go-delve/delve.git
cd delve/cmd/dlv/
go build # 編譯會產生 一個 dlv.exe 可執行程式
go install # 這條命令會將 dlv.exe 移動到 我們的 GOPATH/bin 目錄下
沒有安裝好 Git的同學可以直接訪問https://github.com/go-delve/delve.git獲得壓縮包后解壓再來執行 go 命令
最后還要設定一下GoLand
查到的結果有一條是設定 Help → Edit Custom VM Options (如果沒有設定過會彈出視窗讓你新建,確認就行

然后就是 在里面添加一句 dlv.path=$GOPATH/bin/dlv 即可
但是,這樣操作了之后決議不出正確地址,debug無法執行,并且決議的地址總會帶上GoLand自己的bin目錄作為前綴,如下圖

所以我選擇了另外的思路,直接在 GoLand 安裝目錄下的 idea.properties中 添加上dlv.path=dlv路徑這句代碼,解決了這個問題,
因為 使用 Help → Edit Custom VM Options 也只是另外創建一個給用戶的 idea.properties 檔案而已,而改Goland 自帶的 idea.properties更為直接,當然里面的內容最好還是不要亂改,避免出現一些莫名其妙的錯誤
可能是我的GoLand的GOPATH沒設定好,所以 $GOPATH 總是決議不出來,但是打開setting有沒有發現什么例外所以我直接配置了 檔案路徑
參考:https://blog.csdn.net/jayxujia123/article/details/120921516
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/547131.html
標籤:其他
上一篇:68.C++中的const
