Go 零基础 30 min 入门
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.12.12.linux-amd64.tar.gz sudo vi /etc/profile Shift + G
i export PATH=$PATH:/usr/local/go/bin ~
wq! source /etc/profile

sudo dpkg -i code_1.39.2-1571154070_amd64.deb



package arithmetic import "errors" // Div 除法操作
func Div(a, b int) (c int, err error) {
if b == 0 {
err = errors.New("divisor is 0")
return
} c = a / b
return
}
package main import (
"fmt" "code/arithmetic"
) func main() {
println("Hello, 世界") c, err := arithmetic.Div(1, 0)
fmt.Printf("c = %d, err = %+v\n", c, err)
}

go mod init code
go build
./code

package arithmetic import (
"testing" "math/rand"
) func TestDiv(t *testing.T) {
var (
a, b, c int
err error
) a, b = 1, 2
c, err = Div(a, b)
t.Logf("a = %d, b = %d, c = %d, err = %+v", a, b, c, err) a, b = 1, 0
c, err = Div(a, b)
t.Logf("a = %d, b = %d, c = %d, err = %+v", a, b, c, err)
} func BenchmarkDiv(b *testing.B) {
for i := 0; i < b.N; i++ {
Div(rand.Int(), rand.Int())
}
}


package main import (
"fmt"
"log"
"time" "net/http"
_ "net/http/pprof" "code/arithmetic"
) func main() {
println("Hello, 世界") c, err := arithmetic.Div(1, 0)
fmt.Printf("c = %d, err = %+v\n", c, err) for i := 0; i < 1000000; i++ {
go func() {
time.Sleep(time.Second * 10)
}()
} http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {}) err = http.ListenAndServe(":8088", nil)
if err != nil {
log.Fatalf("ListenAndServe: %+v\n", err)
}
}
go pprof debug http://127.0.0.1:8088/debug/pprof/

go tool pprof http://127.0.0.1:8088/debug/pprof/profile -seconds 10
go tool pprof -http=: /home/zhi/pprof/pprof.code.samples.cpu..pb.gz


Go 零基础 30 min 入门的更多相关文章
- 零基础程序员入门Linux系统 !如何快速恢复系统?
新手在学习Linux系统的时候,难免会遇到命令输错,或系统出错的难题.那么如何快速解决呢?本文就先给你一个后悔药,让你快速备份并恢复Linux系统.本文将以Ubuntu为例,在这之前,你需要一台服务器 ...
- 【干货】零基础30分钟让你拥有一个完整属于自己的短视频APP系统
目录 一.附言: 1 二.购买域名和购买服务器: 2 三.搭建服务器环境: 5 四.配置APP前端部分: 8 1.工具以及文件准备: 9 2.配置后端接口地址 11 3.配置APP启动图和启动图标 ...
- 【零基础】快速入门爬虫框架HtmlUnit
迅速的HtmlUnit htmlunit是一款开源的web页面分析工具,理论上来说htmlunit应用于网页的自动化测试,但是相对来说更多人使用它来进行小型爬虫的快速开发.使用htmlunit进行爬虫 ...
- php编程零基础如何快速入门。门头沟编程
昨天遇到一个人,说知道thinktphp,不过几年前的事了. 我先跟他讲了下,xyhcms后台功能,各个版块,以及数据库都介绍了一下. 跟他说了一个功能现场实现,说了实现方法. 然后上机操作,发现他表 ...
- 零基础一分钟入门Python
这篇文章面向所有想学python的小伙伴(甚至你从没听过编程),这篇文章将会带你以最快的速度入门python.赶快上车,时间来不及了... 一,下载和安装python 1.下载: 1.1 python ...
- 零基础小白Python入门必看:面向对象之典型魔术方法
- 深入浅出java 8 lambda表达式--零基础一分钟入门
lambda从使用上来说,第一感觉直白的理解就是,少了很多不必要的匿名回调类的写法,比如: public static void main(String[] args) { PlatformQuery ...
- 零基础大数据入门教程:Java调用阿里云短信通道服务
这里我们使用SpringBoot 来调用阿里通信的服务. 阿里通信,双11.收到短信,日发送达6亿条.保障力度非常高. 使用的步骤: 1.1. 第一步:需要开通账户 1.2. 第二步:阅读接口文档 1 ...
- 学习笔记(1):零基础掌握 Python 入门到实战-列表与元祖到底该用哪个?(二)...
立即学习:https://edu.csdn.net/course/play/26676/338778?utm_source=blogtoedu 列表不能通过增加索引增加元素 可以使用list中的app ...
随机推荐
- 从 secondarynamenode 中恢复 namenode
1.修改 conf/core-site.xml,增加 Xml代码 <property> <name>fs.checkpoint.period</name> < ...
- 强大的时间处理库 moment
中文文档: http://momentjs.cn/docs/ 常用方法 1.当前时间对象 moment () / 指定时间对象 moment("2019-09-19 08:00:0 ...
- Go微服务全链路跟踪详解
在微服务架构中,调用链是漫长而复杂的,要了解其中的每个环节及其性能,你需要全链路跟踪. 它的原理很简单,你可以在每个请求开始时生成一个唯一的ID,并将其传递到整个调用链. 该ID称为Correlati ...
- [Linux] CentOS 显示 -bash: vim: command not found
转载自:https://www.cnblogs.com/wenqiangwu/p/3288349.html i. 那么如何安裝 vim 呢?输入rpm -qa|grep vim 命令, 如果 vim ...
- [工具][vim] vim设置显示行号
转载自:electrocrazy的博客 在linux环境下,vim是常用的代码查看和编辑工具.在程序编译出错时,一般会提示出错的行号,但是用vim打开的代码确不显示行号,错误语句的定位非常不便.那么怎 ...
- ActiveMQ消息选择器Selector
一.前言 消息发送到Broker,消费者通过Destination可以订阅消费某个特定的通道内的消息.一些特殊情况下,需要消费者对消息过滤下再进行消费,也就是筛选出某些特定消息.ActiveMQ提供了 ...
- Excel自定义格式参数
一.自定义格式 方式一:代码结构组成代码分为四个部分,中间用“:”号分隔,具体如下:正数格式:负数格式:零格式:文本格式 两个代码部分,则第一部分用于正数和零和文本,第二部分用于负数 一个代码部分,则 ...
- NET Core 3.0 新姿势 将AutoFac替换内置DI
.NET Core 3.0 和 以往版本不同,替换AutoFac服务的方式有了一定的变化,在尝试着升级项目的时候出现了一些问题. 原来在NET Core 2.1时候,AutoFac返回一个 IServ ...
- Python爬虫(一):爬虫伪装
1 简介 对于一些有一定规模或盈利性质比较强的网站,几乎都会做一些防爬措施,防爬措施一般来说有两种:一种是做身份验证,直接把虫子挡在了门口,另一种是在网站设置各种反爬机制,让虫子知难而返. 2 伪装策 ...
- 如何让谷歌浏览器支持小于12px的字体
CSS3有个新的属性transform,而我们用到的就是transform:scale() 书写一段代码 <body> <p>我是一个小于12PX的字体</p> & ...