【发布时间】:2020-05-06 21:02:54
【问题描述】:
在Rust中,你可以使用black_box函数来强制编译器
- 假设使用了函数的参数(强制它不优化生成该值的代码)
- 无法检查其返回值是如何产生的(阻止它进行常量折叠和其他此类优化)。
Go 中是否有类似的工具(完成任一任务)?
【问题讨论】:
标签: performance go optimization performance-testing
在Rust中,你可以使用black_box函数来强制编译器
Go 中是否有类似的工具(完成任一任务)?
【问题讨论】:
标签: performance go optimization performance-testing
Go 中是否有类似的工具(完成任一任务)?
没有。
如果要使用结果:分配给导出的全局。
【讨论】:
我相信 runtime.KeepAlive 是推荐的,根据以下 Github 问题。不幸的是,尚不清楚函数参数是否存在,或者KeepAlive 是否可以保证工作。
【讨论】: