Convert.ChangeType转换泛型的性能损失测试
2014-01-19 11:00
459 查看
经常要传入参数包,当时一直是用泛型+ChangeType解决的。测试了下,看来这样确实慢了.
另外,可能都会认为Release发布之后会被优化掉。但测试了Release和Debug结果一样慢,比较失望。
100w次for循环(仅供参考)
另外,可能都会认为Release发布之后会被优化掉。但测试了Release和Debug结果一样慢,比较失望。
public void Start<T>(T arg) { var tmp = (Class1ArgPack)Convert.ChangeType(arg, typeof(Class1ArgPack)); //Do something }
100w次for循环(仅供参考)
用例 | Struct耗时 | Class耗时 |
new class | n/a | 306ms |
Convert.ChangeType | 113ms | 67ms |
Object强弱类型转换 | 65ms | 20ms |
直接传入强类型 | 17ms | 17ms |
相关文章推荐
- C# Convert.ChangeType() 将未知类型转换为已知类型
- C#通用类型转换 Convert.ChangeType
- JDK 1.5中泛型(Generics type)的性能测试再测试
- System.Convert.ChangeType 转换数据类型
- Convert.ChangeType接口不能转换的问题
- C#通用类型转换 Convert.ChangeType
- C#通用类型转换 Convert.ChangeType
- C#通用类型转换 Convert.ChangeType
- 强化System.Convert.ChangeType, 使其能够转换枚举ENUM和可空类型Nullable
- 网站性能测试PV到TPS的转换以及TPS的波动
- DEMO[C#]TypeChange 关于类型转换的一个DEMO
- DEMO[C#]TypeChange 关于类型转换的一个DEMO
- 性能测试过程中如何将用户需求转换为测试需求
- 网站性能测试PV到TPS的转换以及TPS的波动
- 关于jmeter+ant+jenkins性能自动化将测试结果文件jtl转换成html文件遇到的问题。
- 网站性能测试PV到TPS的转换以及TPS的波动
- Go 实现泛型转字符串FormatString()及性能测试
- Convert.ChangeType doesnot support Nullable<>
- 网站性能测试PV到TPS的转换以及TPS的波动 【转】
- 性能测试学习之三—— PV->TPS转换模型&TPS波动模型