首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
fliter
掘友等级
资深研发
|
前 网易/B站
公众号: 旅途散记 Go语言贡献者 chatgpt讲解Go知名项目的源码:https://github.com/cuishuang
获得徽章 7
动态
文章
专栏
沸点
收藏集
关注
作品
赞
389
文章 385
沸点 4
赞
389
返回
|
搜索文章
fliter
资深研发 @前 网易/B站
·
4月前
关注
Go项目中的Labels
姊妹篇: Rust项目中的Labels 按照issue数量从多到少排序: https://github.com/golang/go/labels?sort=count-de...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
Rust项目中的Labels
姊妹篇: Go项目中的Labels 按照issue数量从多到少排序: https://github.com/rust-lang/rust/labels?page=2&sor...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
Go + Wasm
DevCycle 团队与 Jon 和 Kris 就 WebAssembly (Wasm) 和 Go 进行了深入讨论!在对 Wasm 的所有内容进行了高层次的讨论之后,我们了...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
go:embed
Carl(Spotlight PA 技术总监)和 Wayne(GoDaddy 首席工程师)与 Mat 和 Mark 一起讨论 Go 1.16 中的新 go:embed 功能...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
举报
达夫设备(Duff's Device)是一种用于优化循环的编程技术,最初由程序员 Tom Duff 提出。这种技术主要用于减少循环中的分支操作,从而提高代码的执行效率。
### 工作原理
达夫设备通过将循环分成多个部分,并将一些循环迭代合并在一起,来减少每次迭代中所需的条件检查。具体来说,它利用了 C 语言的 switch-case 语句和 goto 语句,以实现高效的循环展开(loop unrolling)。
### 示例
以下是一个简单的 C 语言示例,展示了达夫设备的工作原理:
```c
void duff(register int *to, register int *from, register int count) {
register int n = (count + 7) / 8; // 计算需要的块数
switch (count % 8) {
case 0: do {
*to++ = *from++;
case 7: *to++ = *from++;
case 6: *to++ = *from++;
case 5: *to++ = *from++;
case 4: *to++ = *from++;
case 3: *to++ = *from++;
case 2: *to++ = *from++;
case 1: *to++ = *from++;
} while (--n > 0);
}
}
```
### 优点和缺点
**优点**:
- 减少了循环中的条件判断次数,提高了性能,特别是在处理大量数据时。
**缺点**:
- 代码可读性较差,维护难度增加。
- 在大多数现代编译器中,优化效果可能不如手动进行循环展开明显。
### 适用场景
达夫设备在需要高性能的情况下可能会使用,但在现代编程中,代码的可读性和可维护性往往更为重要。因此,使用时需要权衡性能和可读性。
展开
赞过
分享
评论
1
fliter
资深研发 @前 网易/B站
·
4月前
关注
反射和元编程
Mat、Jon 和 Jaana 讨论了反射和元编程。其他语言如何使用反射?这与 Go 的方法有何不同?哪些库很好地使用了反射?哪些情况不适合使用反射?有哪些替代方法?我在 ...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
Go Modules和 雅典项目
本篇内容是根据2016年9月份Go modules and the Athens project音频录制内容的整理与翻译, 小组成员 Mat Ryer 和 Carmen A...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
关于 Golang Weekly
本篇内容是根据2020年1月份Stop the presses音频录制内容的整理与翻译, 时事通讯对开发人员来说发挥着独特的作用。随着 Go 社区的不断发展和成熟,这些时事...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
使用Go构建以太坊
本篇内容是根据2021年5月份#181 Building for Ethereum in Go音频录制内容的整理与翻译 在这期节目中,主持人和两位嘉宾将讨论如何使用 Go ...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
Go性能基础
本篇内容是根据2020年2月份#117 Foundations of Go performance音频录制内容的整理与翻译 在这个多部分系列的第一部分中,Ian 和 Joh...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
核心作者谈Go的泛型
Robert 和 Ian 加入我们讨论 Go 中泛型的最新更新。当开发人员开始使用专为试验泛型和 Go 而设计的工具时,他们希望得到什么类型的反馈?讨论泛型的轻量级 Go ...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
Go中的泛型
Mat、Johnny、Jon 和特邀嘉宾 Ian Lance Taylor 讨论了 Go 中的泛型。什么是泛型?为什么它们有用?为什么接口不够用?如果将泛型添加到 Go 中...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
标准库中的模糊测试
本篇内容是根据2021年6月份#187 Fuzzing in the standard library音频录制内容的整理与翻译 过程中为符合中文惯用表达有适当删改, 版权归...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
性能、模糊测试和魔法
本篇内容是根据2018年1月份Performance, fuzzing & magic音频录制内容的整理与翻译, [Damian Gryski]((https://gith...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
Füźžįñg(模糊测试)
本篇内容是根据2020年8月份Füźžįñg音频录制内容的整理与翻译, 深入探讨Fuzzing并仔细研究 Go 的官方 Fuzzing 提案。 过程中为符合中文惯用表达有适...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
举报
差异模糊测试(Differential Fuzzing)是一种软件测试技术,主要用于发现软件中的安全漏洞和缺陷。它通过对比不同版本的程序或不同的实现,使用模糊测试(Fuzz Testing)技术生成输入数据,观察程序的行为差异,从而识别潜在的漏洞。
### 主要特点
1. **多版本对比**:差异模糊测试通常涉及多个软件版本或不同实现(如不同编程语言的实现)进行对比。
2. **输入生成**:使用模糊测试工具生成随机或特定的输入数据,以测试程序的健壮性。
3. **行为监测**:监测程序对输入的响应,关注崩溃、异常行为或输出结果的差异。
4. **漏洞发现**:通过差异分析,识别出可能存在的安全漏洞和引发的潜在风险。
### 应用场景
- **安全测试**:用于发现应用程序的安全漏洞,特别是在处理不可信输入时。
- **版本验证**:在软件升级或版本更替时,确保新版本没有引入新的缺陷。
- **跨平台对比**:比较不同平台或不同编程语言实现的功能一致性和安全性。
差异模糊测试是一个强大的工具,能够帮助开发人员增强软件的安全性和稳定性。
展开
分享
评论
点赞
fliter
资深研发 @前 网易/B站
·
4月前
关注
Go的调试
本篇内容是根据2021年11月份Debugging Go音频录制内容的整理与翻译, Natalie 和 Ian 欢迎 Liran Haimovitch 和 Tiago Qu...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
遥测和测量的艺术
本篇内容是根据2020年2月份#117 Telemetry and the art of measuring what matters音频录制内容的整理与翻译 遥测技术上手...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
我们正在谈论 CI/CD
本篇内容是根据2021年10月份#162 We're talkin' CI/CD音频录制内容的整理与翻译 持续集成和持续交付都是我们听说过的术语,但它们的真正含义是什么?如...
0
评论
分享
fliter
资深研发 @前 网易/B站
·
4月前
关注
依赖关系是危险的
依赖, 我们需要它们,但如何有效安全地使用它们?在本周的节目中,Kris 与 Ian 和 Johnny 一起讨论了 polyfill.io 供应链攻击、Go 中依赖管理和使...
0
评论
分享
下一页
个人成就
优秀创作者
文章被点赞
699
文章被阅读
228,138
掘力值
10,420
关注了
25
关注者
509
收藏集
5
关注标签
42
加入于
2016-09-29