一个简单却误人很深的性能比较问题如下:
群里刚出现了一个反射与Emit的性能比较:
测试者:for了20000000次的循环,终于得出了Emit比反射性能来的好结论!!!
结论对不?对!
比较普通的用string和stringbuilder的比较,也喜欢for 200000000次的循环,然后得出后者性能好的结论。
结论对不?对!
纵观基本几有的性能测试,都喜欢for 100000000后面的0越多越好, 会感觉效果与结论更显著一些!!!
其实误区就在这次数,理论与现实的差距!!!!!
如果把for的次数设置底于500以下,很明显前者性能好一些。
OK,现实是什么?现实就是很少场景会用到一次操作for超过1000次的,通常for 500次以下的居多。
因此现实的情况是:(web多线程)并发多,单次循环次数多!
举例:你读取50条数据,然后反射为实体,输出!(这么多实在的现实场景!!!而读500000000条数据再转实体输出的有没有?有,有病!)
OK, 然后一个用户来访问,你就for了50次。
那么1000人来访问,是啥情况?for了50*1000???(自己猜了)
这就是现实了:1000个并发50次和一个人循环50*1000次的性能差别。
本文旨在告诉大伙:
如果你还看不懂这些,没事,都有个过渡,IT领域学错比不学好,被误导是好事,多学,错也不打紧!
如果你看的懂,有过误导情节,如果你追求性能,理论归理论,现实归现实,结合才是硬道理!
版权声明:本文原创发表于 博客园,作者为 路过秋天 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。 |
个人微信公众号![]() |
Donation(扫码支持作者):支付宝:![]() |
Donation(扫码支持作者):微信:![]() |
![]() |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
2011-06-15 开源博客QBlog开发者视频教程:模板机制加载原理解说(三)