在学习中了解到defer相比没有使用defer会消耗部分时间,所以测试了下,使用与不使用defer的性能测试,通过实验,defer影响程序的速度基本可以忽略不计。

package mainimport ("time""fmt"
)func main() {t1 := time.Now()for i := 0;i < 1000000;i++ {test1()}et1 := time.Since(t1)fmt.Println("Run time: ", et1)t2 := time.Now()for i := 0;i < 1000000;i++ {test2()}et2 := time.Since(t2)fmt.Println("Run time: ", et2)t3 := time.Now()for i := 0;i < 1000000;i++ {test3()}et3 := time.Since(t3)fmt.Println("Run time: ", et3)
}func test1()  {func() {for i := 0;i <10;i++{}}()
}func test2()  {defer func() {for i := 0;i <10;i++{}}()
}func test3()  {for i := 0;i <10;i++{}
}Run time:  11.0081ms
Run time:  70.0497ms
Run time:  11.0076ms

go defer性能测试相关推荐

  1. 小程序前端性能测试_如何提高前端应用程序的性能

    小程序前端性能测试 If your website takes longer than 3 seconds to load, you could already be losing nearly ha ...

  2. highcharts如何把图多余的空白页面_如何进行前端性能测试入门篇

    前端性能测试:工具使用和分析 1.   参考地址: http://www.genshuixue.com/i-cxy/p/7682961 2.    工具: Yslow , pagespeed  web ...

  3. defer 的前世今生

    延迟语句 defer 在最早期的 Go 语言设计中并不存在,后来才单独增加了这一特性,由 Robert Griesemer 完成语言规范的编写 [Griesemer, 2009], 并由 Ken Th ...

  4. Go 语言之 defer 的前世今生

    作者 | 欧长坤 来源 | 码农桃花源 延迟语句 defer 在最早期的 Go 语言设计中并不存在,后来才单独增加了这一特性,由 Robert Griesemer 完成语言规范的编写 [Griesem ...

  5. Golang:简介、基本语法、函数、defer、Test功能

    春招找实习告一段落了,好长时间没更CSDN的博客,期间写的一些笔记用 typora + git 直接推到github里面了,就没在CSDN里再发了,我的github:https://github.co ...

  6. 性能测试-基础+中级(二)【前端性能测试】

    系列文章目录-性能测试 性能测试-基础+中级(一)[概述+流程+工具+模型+mysql事务] 文章目录 系列文章目录-性能测试 性能测试-基础+中级(一)[概述+流程+工具+模型+mysql事务] 7 ...

  7. defer有什么用呢

    1. 简介 本文将从一个资源回收问题引入,引出defer关键字,并对其进行基本介绍.接着,将详细介绍在资源回收.拦截和处理panic等相关场景下defer的使用. 进一步,介绍defer的执行顺序,以 ...

  8. Go 学习笔记(17)— 函数(03)[defer 定义、defer 特点、defer 释放资源]

    1. defer 定义 Go 函数的关键字 defer 可以提供注册多个延迟调用,只能出现在函数内部,在 defer 归属的函数即将返回时,将延迟处理的语句按 defer 的逆序进行执行,这些调用遵循 ...

  9. 软件性能测试vu脚本录制,利用LR插件完成性能测试脚本

    ● 菜单中会多出一项[Vuser]的菜单.这个菜单就是我们主要使用的内容. ● 另外,在对象库中也会增加LoadRunner相应的对象.这些对象的使用和软件中其他对象的使用没有什么分别.这些对应都是可 ...

最新文章

  1. 统计某一时刻的在线人数
  2. 2.Vivado软件基础操作
  3. 1.2.2 OSI参考模型(应用层、表示层、会话层、传输层、网络层、数据链路层、物理层)
  4. Divide and conquer:Drying(POJ 3104)
  5. Training and investigating Residual Nets 自己分析
  6. 博客之星年度总评选:巅峰之战,谁与争锋?
  7. spark structured stream的Update模式
  8. create-react-app 自定义 eslint 配置
  9. 关于jmeter 加载jar文件的疑问
  10. 移动端APP测试概要
  11. 汽车电子开发设计常用软件工具有哪些
  12. SQLite数据库可视化工具【SQLiteStudio】的下载及安装
  13. 李开复:如何设计你的年度计划
  14. hadoop3.3.1搭建过程遇到的坑
  15. 京东base.css
  16. 高数下|级数4|手写笔记(绝对收敛与条件收敛)
  17. ――关于几个著名小说的胡思乱想
  18. 康奈尔大学计算机交叉学专业,美国康奈尔大学EE专业设置的五大方向
  19. 2023年电工杯数学建模B题 人工智能对大学生学习影响的评价 具体建模过程 代码以及思路
  20. wazhu之agent功能详解

热门文章

  1. Linux Shell常用技巧(四)
  2. Android 手势解锁 GestureLock的使用和简单修复
  3. Eclipse+Maven配置
  4. Source Insight中查看文件显示全路径
  5. 从open系统调用的源码看文件的打开过程
  6. PHP如何处理emoji表情存入utf8的数据库
  7. 基于空间相关的图像模板匹配及MATLAB实现
  8. 常用数据结构及复杂度
  9. 监控工具—Prometheus—监控Java程序
  10. 数据库引起的性能瓶颈应如何优化?