golang(go语言)调试和查看gc信息,以及gc信息解析
这里记录一下调试golang gc的方法
启用gc打印:
# GODEBUG=gctrace=1 go run ./main.go
程序启动后gc将打印如下信息:
gc 65 @16.996s 0%: 0+1.0+0 ms clock, 0+0/1.0/2.0+0 ms cpu, 10->10->4 MB, 11 MB goal, 4 P
gc 66 @100.235s 0%: 0+1.0+0 ms clock, 0+1.0/1.0/2.0+0 ms cpu, 9->9->3 MB, 10 MB goal, 4 P
GC forced
gc 35 @127.931s 0%: 0+1.9+0 ms clock, 0+0/1.9/4.9+0 ms cpu, 8->8->3 MB, 9 MB goal, 4 P
scvg0: inuse: 6, idle: 12, sys: 18, released: 0, consumed: 18 (MB)
scvg0: inuse: 6, idle: 9, sys: 15, released: 0, consumed: 15 (MB)
GC forced
gc 67 @220.264s 0%: 0+0.98+0 ms clock, 0+0/0.98/2.9+0 ms cpu, 5->5->3 MB, 7 MB goal, 4 P
gc打印信息的含义依次如下:
- gc 65 @16.996s:第65次执行,进程已经启动16.996秒
- 0%:本次执行gc占用的进程cpu时间的百分比
- 0+1.0+0 ms clock:本次gc的耗时。依次是STW清扫的时间, 并发标记和扫描的时间,STW标记的时间。(STW即stop-the-world,STW时间内进程完全被挂起)
- 0+0/1.0/2.0+0 ms cpu:本次gc占用cpu时间
- 10->10->4 MB:堆的大小,gc后堆的大小,存活堆的大小
- 11 MB goal:整体堆的大小
- 4 P:CPU核数
- GC forced:由runtime.GC()强制执行
- 系统内存回收信息
scvg0: inuse: 6, idle: 12, sys: 18, released: 0, consumed: 18 (MB)
- inuse:使用多少M内存
- idle:剩下要清除的内存
- sys:系统映射的内存
- released:释放的系统内存
- consumed:申请的系统内存
golang(go语言)调试和查看gc信息,以及gc信息解析的更多相关文章
- 在调试状态查看DateTable里的数据信息
- 浅析VS2010反汇编 VS 反汇编方法及常用汇编指令介绍 VS2015使用技巧 调试-反汇编 查看C语言代码对应的汇编代码
浅析VS2010反汇编 2015年07月25日 21:53:11 阅读数:4374 第一篇 1. 如何进行反汇编 在调试的环境下,我们可以很方便地通过反汇编窗口查看程序生成的反汇编信息.如下图所示. ...
- Linux下用gdb 调试、查看代码堆栈
Linux中用gdb 查看代码堆栈的信息 core dump 一般是在segmentation fault(段错误)的情况下产生的文件,需要通过ulimit来设置才会得到的. 调试的话输入: gd ...
- HTTP基础(一):如何使用浏览器network查看请求和响应的信息
一. 问题描述 HTTP作为前端开发与后开发链接的载体,其重要性不言而喻,今天我不复习关于HTTP自身的一些知识,只复习如何解读浏览器自带的的抓包工具(查看请求信息与响应信息)network. 二. ...
- Mac OS X下环境搭建 Sublime Text 2 环境变量配置 开发工具配置Golang (Go语言)
Golang (Go语言) Mac OS X下环境搭建 环境变量配置 开发工具配置 Sublime Text 2 一.安装Golang的SDK 在官网http://golang.org/ 直接下载安装 ...
- 一、C语言调试—— gdb 的使用
1.1 gdb 调试工具常用命令 list:展开调试的源代码,缩写 l: break:设置断点,缩写为 b: info break:查看断点信息,缩写为 i b delete:删除断点 print:打 ...
- Golang (Go语言) Mac OS X下环境搭建 环境变量配置 开发工具配置 Sublime Text 2 【转】
一.安装Golang的SDK 在官网 http://golang.org/ 直接下载安装包安装即可.下载pkg格式的最新安装包,直接双击运行,一路按照提示操作即可完成安装. 安装完成后,打开终端,输入 ...
- 查看http请求的header信息
1 下载chrome浏览器 chrome浏览器是google开发的一块非常绑定浏览器.chrome浏览器下载地址. 2 通过chrome控制台查看http请求的header信息 2.1 打开chrom ...
- 从Golang中open的实现方式看Golang的语言设计
Golang有很多优点: 开发高效:(C语言写一个hash查找很麻烦,但是go很简单) 运行高效:(Python的hash查找好写,但比Python高效很多) 很少的系统库依赖:(环境依赖少,一般不依 ...
随机推荐
- scau 18087 开始我是拒接的 mobius
其实有一个很有用的技巧就是,把gcd = 4的贡献,压去gcd = 2时的贡献,就不需要考虑这么多的了. 为什么可以把gcd = 4的,压去gcd = 2的呢,gcd = 12的,压去gcd = 6的 ...
- 基于JAVA的设计模式之组合模式
概念 将所有对象组合成一种树形结构,有分支节点.叶子节点,分支节点可以有自己的子节点,子节点可以是分支节点.叶子节点,可以进行增删的操作,而叶子节点不可以.比如文件夹就是一个分支节点,而文件就是一个叶 ...
- 有关在python中使用Redis(一)
python作为一种处理数据的脚本语言本身有许多方法函数供大家使用,有时候为了提升数据处理速度(如海量数据的访问或者海量数据的读取),涉及分布式管理架构,可能需要用到Redis,Redis是一个开源的 ...
- tcp的三次连接握手和四次释放握手
http://blog.csdn.net/whuslei/article/details/6667471/ 这篇博客讲的很清楚. 下面我简单说明一下:三次连接握手,首先client发送请求报文,然后服 ...
- SpringBoot 数据库操作 增删改查
1.pom添加依赖 <!--数据库相关配置--> <dependency> <groupId>org.springframework.boot</groupI ...
- ArcGIS for Server内置JS Viewer的离线部署和配置
很多情况下,在地图服务发布完毕后,我们往往利用 ArcGIS for Server内置的 JS Viewer来查看和检测所发布的地图服务是否满足我们的要求.具体操作如下: 点击开始 -> 所有程 ...
- Golang的开发环境配置之SlickEdit篇
Golang的开发环境通常有如下三种: 1. vi, emacs, notepad++ 2. Sublime Text 2/3 3. LiteIDE 不过,今天我想体验一下在slickedit当中使用 ...
- jsp页面file标签上传图片以及blob类型数据库存取。
我的jsp页面表单如下: <form name="form1" action="/YiQu/AddUserServlet?jurisdiction=1" ...
- DA层(数据访问层)的方法不用静态的
1.静态方法,不会经过构造函数,所以你不能通过构造函数来初始参数,你只能通过传递参数,来初始他当你有多种参数需要传递的时候,你就要不断重载他了.当然你可以用参数型的类型,不过如果参数有一定结构,就很麻 ...
- Android中一个关于ListView的奇怪问题
今天在做项目的时候发现了一个比较奇怪的问题,是关于ListView的,即ListView的android:height属性会影响程序中ListView的getView()方法的调用次数,如果设置Lis ...