彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

栏目: Go · 发布时间: 5年前

内容简介:大家好,我是彬哥,本节课给大家带来的是关于程序如何进行断点调试,本节的目的主要是让小白用户或者初学者可以学习到程序调试的基本的使用技巧等。首先,我们使用的编辑器还是liteIDE,彬哥只是给大家简单的介绍下如何调试等基本技巧。F5 :继续执行

大家好,我是彬哥,本节课给大家带来的是关于程序如何进行断点调试,本节的目的主要是让小白用户或者初学者可以学习到程序调试的基本的使用技巧等。

首先,我们使用的编辑器还是liteIDE,彬哥只是给大家简单的介绍下如何调试等基本技巧。

彬哥笔记 --7  <a href='https://www.codercto.com/topics/6127.html'>Go</a> 语言 程序调试说明(LiteIDE为例)

调试按键说明

F5 :继续执行

Shift+F5 :停止执行

F9:增加/删除断点

F10:逐过程

F11:逐句执行

Shift+F11:跳出执行

Ctrl+F10:执行到此行

显示的数据区域:

彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

调试数据显示区域

同学们已经看到LiteIDE编辑器整个的调试数据的基础操作说明及快捷键的使用,这里彬哥补充下,编辑器本身支持2种调试方式:

彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

2种调试方式

Gdb无法很好的支持golang的协程机制,delve为golang而生.

彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

delve常用命令

package main
import (
   "fmt"
   "sync"
   "time"
)
func dostuff(wg *sync.WaitGroup, i int) {
   fmt.Printf("goroutine id %d\n", i)
   time.Sleep(300 * time.Second)
   fmt.Printf("goroutine id %d\n", i)
   wg.Done()
}
func main() {
   var wg sync.WaitGroup
   workers := 10
   wg.Add(workers)
   for i := 0; i< workers; i++ {
      go dostuff(&wg, i)
   }
   wg.Wait()
}
彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

1

彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

2

LiteIDE默认是GDB调试,但是在服务器开发过程中,特别是上线项目,并不是用以上的方式进行调试的;多数是error流水日志或者邮件预警等,这些后面彬哥都会给大家慢慢道来。

每天坚持学习1小时Go语言,大家加油,我是彬哥,下期见!如果文章中不同观点、意见请文章下留言或者关注下方订阅号反馈!

彬哥笔记 --7 Go语言 程序调试说明(LiteIDE为例)

Golang语言社区


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法技术手册(原书第2版)

算法技术手册(原书第2版)

George T. Heineman、Gary Pollice、Stanley Selkow / 杨晨、曹如进 / 机械工业出版社 / 2017-8-1 / 89.00元

本书使用实际代码而非伪代码来描述算法,并以经验主导支撑数学分析,侧重于应用且规范严谨。本书提供了用多种程序设计语言实现的文档化的实际代码解决方案,还介绍了近40种核心算法,其中包括用于计算点集的Voronoi图的Fortune算法、归并排序、多线程快速排序、AVL平衡二叉树实现以及空间算法。一起来看看 《算法技术手册(原书第2版)》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具