在vb.net中使用'With'关键字而不是一遍又一遍地重复使用实例名称会带来怎样的性能影响?VB.NET'具有'语句性能?
2
A
回答
5
假设你将它与局部变量引用进行比较,没有任何区别;两者都会发出完全相同的IL。 (至少在发布模式下)
但是,如果您将它与属性或索引器的重复调用进行比较,则With
会更快一些,如果您将其与方法的重复调用进行比较,它可能会更快。 (该With
关键字将创建一个局部变量并将其分配给你With
倒是对象,因此该方法只会而不是一次的呼吁每一行)
2
没有运行时性能成本。这只是“语法糖”,使您的代码看起来更漂亮。
0
sub xyz (ByRef param as MyObj)
'Local ref, same as with
dim o2 as YourObject = param.YourObject
o2.callSomething()
'Bad performance
param.YourObject.callSomething()
end sub
+1
另请提供一些关于它如何回答问题的答案。 – brimborium 2012-11-09 15:23:56
相关问题
- 1. 创建具有while语句属性的do语句
- 2. MERGE语句性能
- 3. Select语句性能
- 4. VB.NET SQL语句
- 5. 哪个查询具有更好的性能 - 带有case语句的where子句?
- 6. 有哪些工具可用于测试SQL语句的性能?
- 7. 具有嵌套选择性能的JDBC MySQL DML语句插入
- 8. 具有更好性能的(*)或(域名)SQL选择语句?
- 9. 具有嵌套SELECT的mysql语句 - 如何提高性能
- 10. VB.NET 4.0 DataContractJsonSerializer具有改性
- 11. 语法select语句vb.net
- 12. vb.net webbrowser if语句
- 13. 是否有可能具有jQuery功能的OR语句?
- 14. c#锁定语句性能
- 15. SELECT语句的性能
- 16. if语句的性能
- 17. SQL语句性能审查
- 18. MySql案例语句性能
- 19. 开关语句性能C#
- 20. TSQL SELECT语句具有@varible
- 21. KnockoutJS if语句有效性
- 22. php更具可读性如果语句
- 23. vb.net复杂if语句
- 24. vb.net放缓foreach语句
- 25. VB.NET中,SELECT语句,默认
- 26. VB.net DataTable选择语句
- 27. 具有超过200万条记录的Oracle合并语句的性能问题
- 28. VB.Net IO性能
- 29. UPDATE语句中的VB.NET语法错误
- 30. 语法错误插入语句vb.net
+1。虽然我认为如果您在使用With的特定代码块中进行测量并发现严重的性能瓶颈,那么您应该只担心这些性能差异。 “过早微观优化是所有邪恶的根源” – MarkJ 2010-01-13 13:21:07
@MarkJ我正在谈论一个巨大的批量操作(1000000+)条目 – Shimmy 2011-10-13 18:06:07
我不知道你可以用'With'方法。凉! – toddmo 2015-02-06 15:18:29