性能刨析与事件追踪
摘要:2.7性能刨析与事件追踪2.7.1pprof性能刨析性能分析工具:pprof,可以捕捉多维度的运行状态数据,也是CPU分析器,是gperftools工具的一个组件·runtime/pprof:采集程序的运行数据进行分析·net/http/pprof:采集HTTP服务器的运行数据进行分析(1)ppro
阅读全文
密码学算法技巧
摘要:2.6密码学算法技巧2.6.1Hash算法1)简介:Hash算法(又称散列算法、散列函数、哈希算法)是把任意长度的输入通过散列算法变成固定长度的输出,且不可逆的单向密码机制。Hash算法是密码学的重要分支,在数字签名和消息完整性检测等方面有广泛的应用2)特点正向快速:给定明文和Hash算法,在有限资
阅读全文
错误异常处理技巧
摘要:2.5.2错误处理的技巧1)当函数调用失败的原因只有一个时,尽量不使用error2)当调用没有失败时,尽量不使用error3)错误尽量放在返回值类型列表的最后4)错误值尽量统一定义5)错误处尽量加日志6)错误处理尽量使用defer7)当尝试几次可以避免调用失败时,尽量不要立即返回错误8)当上层函数不
阅读全文
Go语言面向对象
摘要:面向对象type TreeNode struct{ Left,Right *TreeNode Value int} func (root *TreeNode) traverse(){ if root == nil{ return } root.Left.traverse() fmt.Ptint(ro
阅读全文
Go语言中的格式化输出
摘要:%% %字面量 %b 一个二进制整数,将一个整数格式转化为二进制的表达方式 %c 一个Unicode的字符 %d 十进制整数 %o 八进制整数 %x 小写的十六进制数值 %X 大写的十六进制数值 %U 一个Unicode表示法表示的整型码值 %s 输出以原生的UTF8字节表示的字符,如果consol
阅读全文
切片
摘要:1.同型的切片变量与数组变量的声明相同,只是他忽略了长度var mySlice []int 2.在大多数情况下,切片和数组的代码行为完全相同。包括元素赋值、使用0值、传递给len函数和for...range循环 3.切片字面量的声明与数组字面量相同,但它忽略了长度[]int{1,7,10} 4.你可
阅读全文