在go
的键在编程的类型很高。 GO采用类型主张和类型开关来促进此过程。本文深入研究了这些技术的性能特征。绩效关注 package main 进口 ( “ FMT” “测试” ) func问题(任何接口{}){ 开关V:=任何东西。(type){ 案例字符串: fmt.println(v) case int32,int64: fmt.println(v) case somecustomType: fmt.println(v) 默认: fmt.println(“未知”) } }
示例代码使用类型开关来确定输入变量的类型。在多个测试机上,结果始终揭示所有四个方法都以相似的速度执行:直接方法调用,接口实现,类型断言和类型交换机。下面的示例演示了以下发现:
BenchmarkIntMethod-16 20000000 1.67 NS/OP BenchmarkInterface-16 1000000000 2.03 NS/OP Benchmarktypeswitch-16 20000000 1.70 NS/OP BenchmarkTypepePeaserSertion 16 20000000 1.67 ns/op 因此,与其他类型检查方法相比,GO中的类型断言和类型切换在GO中不要引起明显的性能损害。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3