- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
目的:基准测试的主要目的是比较不同实现方式之间的性能差异,找出性能瓶颈.
在命名文件时需要让文件必须以 _test 结尾,在文件中导入 testing 包。基准测试可以测试一段程序的运行性能及耗费 CPU 的程度 , 获得代码内存占用和运行效率的性能数据。 Go 语言中提供了基准测试框架,使用方法类似于单元测试,使用者无须准备高精度的计时器和各种分析工具,基准测试本身既可以打印出非常标准的测试报告.
func BenchmarkName(b *testing.B) 。 |
基准测试以 Benchmark 为前缀,需要一个 *testing.B 类型的参数 b ,基准测试必须要执行 b.N 次,这样的测试才有对照性, b.N 的值是系统根据实际情况去调整的,从而保证测试的稳定性.
测试代码如下:
1 package main 2 3 import ( 4 " testing " 5 " time " 6 ) 7 func Benchmark_Log(b * testing.B) { 8 for i := 0 ; i < b.N; i++ { 9 b.Log( " hello world " ) 10 time.Sleep( 1 * time.Second) 11 b.Log( " hello world jkjk " ) 12 } 13 }
。
(1) go test -bench . 执行项目中所有基准测试文件 。
在终端输入命令: go test -bench . 可以看到 执行了 1 次,即为 b.N 的值。 Benchmark_Log2 函数平均每次操作花费了 1011875500 纳秒, Benchmark_Log 函数平均每次操作花费了 1003084600 纳秒.
。
。
(2) go test -bench . xxx_test.go, 执行指定基准测试文件,如 go test -bench . time_test.go 、 go test -bench . time_test.go time2_test.go 。
。
。
(3) go test -bench . -benchtime=10s 执行 10s 。
。
(4) go test -bench . -benchtime= 10 x 执行 10 次 。
。
。
点击 VScode 视图左侧的测试按钮,点击运行按钮下方的运行测试按钮进行基准测试,或者点击 module 、 _test.go 文件,基准函数的运行测试按钮.
VScode 测试进行 golang 基准测试的操作与 golang 单元测试一致,但输出的信息不同.
。
在进行基准测试的过程中,可以点击取消测试运行按钮取消测试.
。
最后此篇关于VScode中golang基准测试gotest-bench.的文章就讲到这里了,如果你想了解更多关于VScode中golang基准测试gotest-bench.的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
要构建我的远程环境,我需要设置几个环境变量(它们在 docker-compose 文件中使用)。这些是在我的 ZSH 环境中设置的,因此从终端运行 docker-compose build 可以按预期
这是vscode在主机中安装vscode-server时的日志 我发现它得到了 vscode-server 提交 ID,如下日志: [13:07:27.334] Using commit id "f8
在 devContainer 实例中安装 LiveShare 扩展时出现错误。 例如使用:https://github.com/microsoft/vscode-remote-try-go/然后将扩展
在 devContainer 实例中安装 LiveShare 扩展时出现错误。 例如使用:https://github.com/microsoft/vscode-remote-try-go/然后将扩展
我尝试在代码中构建和调试扩展。 我从https://github.com/microsoft/vscode-wordcount下载了字数统计的样本. 当我单击 F5 时,未生成 ./out 文件夹,并
你好,我最近从 Atom 切换到 Vs-code,并尝试了一些解释如何在他们的网站上添加语言支持的教程,我知道语言支持应该有着色器 问题是如何为自定义语言添加颜色?当我基本上使用每种语言时,我习惯了自
为了为我的数据科学工作流提供足够的计算能力,我在远程机器上使用 Docker 容器。虽然我可以通过 vscode-remote 连接到我的远程机器,但我无法连接到运行在这台机器上的 Docker 容器
我有一个创建多个 Docker 镜像的项目。我想在 vscode-remote 中为每个图像设置一个 devcontainer,以便我可以为每个图像启动一个容器。 我一次只需要启动并连接到一个容器/图
我认为这是可以通过编辑实现的 keybindings.json .由于我似乎无法找到可用命令的列表,因此通过自动完成我已经做到了这一点: { "key": "SHORTCUT"
gopls 需要在工作区的根目录下有一个模块。 您可以通过将每个模块作为工作区文件夹打开来处理多个模块。 此工作流程的改进即将推出 ( https://github.com/golang/go/iss
我的电脑上已经安装了 vscode。不久前我注意到它现在包含在 anaconda 发行版中。与我已经安装的 vscode 相比,使用 anaconda 附带的 vscode 有什么好处吗? 仅供引用,
我的电脑上已经安装了 vscode。不久前我注意到它现在包含在 anaconda 发行版中。与我已经安装的 vscode 相比,使用 anaconda 附带的 vscode 有什么好处吗? 仅供引用,
我想为 VSCode 编写一个扩展,重用 vscode-python 的重构/重命名功能扩大。这样,当用户执行我的命令时,我的扩展程序将对 .py 文件的变量进行重命名。我不知道 vscode-pyt
环境 vscode 版本 1.19.1 (1.19.1) 鲁博科普 (0.52.1) Darwin mbp 16.7.0 Darwin 内核版本 16.7.0:2017 年 10 月 4 日星期三 0
我在写 Markdown 文本时尝试自动换行:我希望当我输入比 wrap line length 长的行时自动换行设置,由硬 中断(即 newline 字符)。 我已经设定 word wrap至 wo
我想制作一个涉及发布到我的 API 的 VSC 扩展,但是当我将我的 fetch 语法写出以发布到我的服务器时,它不起作用。所以我想也许我需要添加 node-fetch,所以我做了npm i --sa
我有一个 master 分支,它是生产分支,因此我创建了几个其他分支来修复和缺陷。我在这些分支中做了一些更改,所以我在这些分支中提交了很多次。根据政策,我必须为 master 分支中的缺陷创建单个提交
我正在使用 Visual Studio Code Insiders 版本 1.65.0-insider。直到 3 天前,我通过 VPN 从工作笔记本电脑连接到工作中的远程服务器时没有遇到任何问题。我有
在 Windows 上,我必须在打开的每个新终端 session 上运行命令 start-ssh-agent.cmd。我的开发环境是VSCode,每天都会打开十几个新终端。每次打开终端后,我都必须手动
我最近开始使用 VSCode,我真的很喜欢它。我用谷歌搜索了我的问题,并试图找到与 VSCode 相关的任何答案。 考虑我有以下代码: if (a === 'some condition') re
我是一名优秀的程序员,十分优秀!