欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

golang?debug調(diào)試的實(shí)現(xiàn)

 更新時間:2024年12月04日 10:02:11   作者:黃昏單車  
本文主要介紹了使用Go語言進(jìn)行本地調(diào)試和遠(yuǎn)程調(diào)試,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1. 本地調(diào)試

1:Add Configurations 添加配置文件(Run kind :Directory)

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

2:進(jìn)入run運(yùn)行窗口

在這里插入圖片描述

在這里插入圖片描述

3:debug斷點(diǎn)調(diào)試模式

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

1. Resume Program (繼續(xù)運(yùn)行)

圖標(biāo): ?? 或 ?
快捷鍵: F9(Windows/Linux)、Command+Option+R(Mac)
作用: 程序會繼續(xù)運(yùn)行直到下一個斷點(diǎn)或調(diào)試結(jié)束。如果沒有更多斷點(diǎn),程序會正常執(zhí)行至結(jié)束。

2. Step Over (單步跳過)

圖標(biāo): ?
快捷鍵: F8(Windows/Linux)、Command+F8(Mac)
作用: 單步執(zhí)行當(dāng)前代碼行,但不會進(jìn)入函數(shù)內(nèi)部(如果當(dāng)前行是函數(shù)調(diào)用,會跳過函數(shù)內(nèi)部的執(zhí)行)。

3. Step Into (單步進(jìn)入)

圖標(biāo): ??↘?
快捷鍵: F7(Windows/Linux)、Command+Option+Down(Mac)
作用: 進(jìn)入當(dāng)前行調(diào)用的函數(shù)內(nèi)部進(jìn)行調(diào)試。如果該行沒有函數(shù)調(diào)用,則執(zhí)行下一行代碼。

4. Step Out (單步返回)

圖標(biāo): ↖???
快捷鍵: Shift+F8(Windows/Linux)、Command+Option+Up(Mac)
作用: 跳出當(dāng)前函數(shù),返回到調(diào)用此函數(shù)的上一層,并暫停在那里。

5. Evaluate Expression (表達(dá)式求值)

圖標(biāo): ??
快捷鍵: Alt+F8(Windows/Linux)、Option+F8(Mac)
作用: 允許你在調(diào)試過程中動態(tài)評估某個表達(dá)式的值,非常適合臨時檢查復(fù)雜變量或表達(dá)式的運(yùn)行結(jié)果。

6. Show Execution Point (顯示當(dāng)前執(zhí)行點(diǎn))

圖標(biāo): ?? 或 ??
快捷鍵: Alt+F10(Windows/Linux)、Option+Command+P(Mac)
作用: 跳轉(zhuǎn)到當(dāng)前程序執(zhí)行的代碼位置(特別適合在查看其他文件后快速回到當(dāng)前斷點(diǎn))。

7. Drop Frame (回退當(dāng)前棧幀)

圖標(biāo): ??
作用: 重置當(dāng)前棧幀的狀態(tài),從當(dāng)前函數(shù)重新執(zhí)行一遍。這不會改變?nèi)殖绦驙顟B(tài),僅適用于當(dāng)前函數(shù)調(diào)用。

8. Stop (停止調(diào)試)

圖標(biāo): ■
快捷鍵: Ctrl+F2(Windows/Linux)、Command+F2(Mac)
作用: 停止調(diào)試會話,終止當(dāng)前調(diào)試運(yùn)行。

9. Mute Breakpoints (屏蔽斷點(diǎn))

圖標(biāo): ???(小喇叭)
作用: 暫時禁用所有斷點(diǎn),但不刪除。程序會無視所有斷點(diǎn)直接運(yùn)行。

10. View Breakpoints (查看斷點(diǎn)列表)

圖標(biāo): ???
快捷鍵: Ctrl+Shift+F8(Windows/Linux)、Command+Shift+F8(Mac)
作用: 打開斷點(diǎn)管理窗口,方便查看、啟用、禁用或刪除斷點(diǎn)。

如法炮制,下面是Run kind另外兩種調(diào)試:

Run kind :Package

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

Run kind :File

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

2. 附加到進(jìn)程

1:安裝插件

go install github.com/google/gops@latest

在這里插入圖片描述

在這里插入圖片描述

2:編譯指定參數(shù)

go build -gcflags="all=-N -l" -o demo.exe

在這里插入圖片描述

3:附加到進(jìn)程

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

4. 遠(yuǎn)程調(diào)試

1:設(shè)置編譯環(huán)境變量

$Env:CGO_ENABLED=0;$Env:GOARCH="amd64";$Env:GooS="linux"

在這里插入圖片描述

2:編譯運(yùn)行文件

# 命令二選一皆可以
go build -o main .\main.go
go build -gcflags="all=-N -l" -o main

在這里插入圖片描述

3:上傳到服務(wù)器執(zhí)行(使用ftp工具或者rz命令上傳都行)

sudo chmod +x main

在這里插入圖片描述

4:服務(wù)器需要安裝go環(huán)境,這里不講解,自行安裝

在這里插入圖片描述

5:服務(wù)器安裝調(diào)試工具,進(jìn)行進(jìn)程監(jiān)控轉(zhuǎn)發(fā),遠(yuǎn)程調(diào)試

go install github.com/go-delve/delve/cmd/dlv@latest

在這里插入圖片描述

6:配置遠(yuǎn)程調(diào)試

dlv --listen=:2345 --headless=true --api-version=2 --accept-multiclient exec ./main -- -j=10

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

下面是遠(yuǎn)程調(diào)試的另一種方式

1:通過進(jìn)程id監(jiān)控

ps -aux | grep main		//查看進(jìn)程信息
dlv --listen=:2345 --headless=true --api-version=2 attach 898805		//添加進(jìn)程

在這里插入圖片描述

在這里插入圖片描述

2:進(jìn)入debug

在這里插入圖片描述

到此這篇關(guān)于golang debug調(diào)試的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)golang debug調(diào)試內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 一文詳解Golang使用接口支持Apply方法的配置模式

    一文詳解Golang使用接口支持Apply方法的配置模式

    這篇文章主要為大家介紹了一文詳解Golang使用接口支持Apply方法的配置模式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Go爬蟲(http、goquery和colly)詳解

    Go爬蟲(http、goquery和colly)詳解

    goquery可以避免操作復(fù)雜的正則表達(dá)式,它可以直接根據(jù)url獲取一個Document對象,然后根據(jù)標(biāo)簽選擇器、類選擇器和id選擇器獲取相應(yīng)的選擇對象,進(jìn)行自定義的操作,這篇文章主要介紹了Go爬蟲(http、goquery和colly),需要的朋友可以參考下
    2022-09-09
  • golang封裝一個執(zhí)行命令行的函數(shù)(return?stderr/stdout/exitcode)示例代碼

    golang封裝一個執(zhí)行命令行的函數(shù)(return?stderr/stdout/exitcode)示例代碼

    在?Go?語言中,您可以使用?os/exec?包來執(zhí)行外部命令,不通過調(diào)用?shell,并且能夠獲得進(jìn)程的退出碼、標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤輸出,下面給大家分享golang封裝一個執(zhí)行命令行的函數(shù)(return?stderr/stdout/exitcode)的方法,感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • Go語言context上下文管理的使用

    Go語言context上下文管理的使用

    本文主要介紹了Go語言context上下文管理的使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Golang交叉編譯(跨平臺編譯)的使用

    Golang交叉編譯(跨平臺編譯)的使用

    本文主要介紹了Golang交叉編譯(跨平臺編譯)的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 使用go gin來操作cookie的講解

    使用go gin來操作cookie的講解

    今天小編就為大家分享一篇關(guān)于使用go gin來操作cookie的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • go中switch語句的用法詳解

    go中switch語句的用法詳解

    在Go中的switch語句類似于C、C++、Java、JavaScript和PHP中的switch語句,不同之處在于它只執(zhí)行匹配的case,因此不需要使用break語句,下面我們就一起來學(xué)習(xí)一下switch語句的具體使用吧
    2023-09-09
  • 深入理解Go高級并發(fā)模式編寫更高效可擴(kuò)展的應(yīng)用程序

    深入理解Go高級并發(fā)模式編寫更高效可擴(kuò)展的應(yīng)用程序

    Go對并發(fā)提供了強(qiáng)大的原生支持,本文討論Go的高級并發(fā)模式,理解這些并發(fā)模式,可以幫助我們編寫高效的Go應(yīng)用程序,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-02-02
  • Go擴(kuò)展原語之SingleFlight的用法詳解

    Go擴(kuò)展原語之SingleFlight的用法詳解

    Go語言擴(kuò)展包同步原語singleflight.Group能夠再一個服務(wù)中抑制對下游的多次重復(fù)請求,它能夠限制對同一個鍵值對的多次重復(fù)請求,減少對下游的瞬時流量,接下來小編就給大家講講Go SingleFlight的具體用法,需要的朋友可以參考下
    2023-07-07
  • 關(guān)于golang高并發(fā)的實(shí)現(xiàn)與注意事項(xiàng)說明

    關(guān)于golang高并發(fā)的實(shí)現(xiàn)與注意事項(xiàng)說明

    這篇文章主要介紹了關(guān)于golang高并發(fā)的實(shí)現(xiàn)與注意事項(xiàng)說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05

最新評論