C#里,如何减少控件对CPU和内存的消耗?

dvdvip 2009-03-05 09:09:43
C#里,每一个控件,就会严重地增加软件的性能。这是我亲眼和亲身感觉的。就像ASP.NET的服务器控件一样可恶。


如何减少控件对CPU和内存的消耗?有没有好办法?例如,把一些没有必要的属性关闭。我主要是想知道Button和TextBox这两个控件。
...全文
297 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yzk2008 2009-09-22
  • 打赏
  • 举报
回复 1
[Quote=引用 6 楼 vrhero 的回复:]
1.C#仅仅是个语言,C#中根本就没有控件...控件是属于.NET Framework的...

2.控件并不会严重地影响软件的性能...至少在我做过的上百个项目中没有见过,虽然不能和C++比,但是用户都是比较满意的...

3.如果你用过Java的桌面程序你就会知道.NET的性能是多么让人满意...

4.如果你如此看重性能,去用C++,不要发无谓的牢骚...
[/Quote]

不要装B,我在反复调试,通过增减某些控件,看到了,每次显示时控件的数量对cpu的影响很大,界面上控件多的话,每次显示也都可以看到控件们是慢慢显示出来的,就是从水底下浮起来似的。
ProjectDD 2009-03-06
  • 打赏
  • 举报
回复
对象大自然占地方(内存)大

一个控件本来就是比较大的对象,那么多属性,但我重来没考虑过这些东西;

因为不会自己调用GC
vinoya 2009-03-06
  • 打赏
  • 举报
回复
内存中一页的空间约是2M,每实例化一个对象都要占用空间的。避免无必要的对象,减少内存换页。
genius_tong 2009-03-05
  • 打赏
  • 举报
回复
只是一味的学,没想过这么深刻的问题&……受教~~
only_lonely 2009-03-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 vrhero 的回复:]
1.C#仅仅是个语言,C#中根本就没有控件...控件是属于.NET Framework的...

2.控件并不会严重地影响软件的性能...至少在我做过的上百个项目中没有见过,虽然不能和C++比,但是用户都是比较满意的...

3.如果你用过Java的桌面程序你就会知道.NET的性能是多么让人满意...

4.如果你如此看重性能,去用C++,不要发无谓的牢骚...
[/Quote]

高手的指导,虽然有些直接,还是虚心受教吧,谁叫咱新手呢···
鱼C缸 2009-03-05
  • 打赏
  • 举报
回复
同意楼上
vrhero 2009-03-05
  • 打赏
  • 举报
回复
1.C#仅仅是个语言,C#中根本就没有控件...控件是属于.NET Framework的...

2.控件并不会严重地影响软件的性能...至少在我做过的上百个项目中没有见过,虽然不能和C++比,但是用户都是比较满意的...

3.如果你用过Java的桌面程序你就会知道.NET的性能是多么让人满意...

4.如果你如此看重性能,去用C++,不要发无谓的牢骚...
ginni215 2009-03-05
  • 打赏
  • 举报
回复
是啊,我也觉的性能不会因几个控件的属性而有明显的影响吧,我想主要还应该是初始化的时候绑定有数据的时候会有影响~
cppfaq 2009-03-05
  • 打赏
  • 举报
回复
归根结底,c#不是动态语言.因此你使用控件的开销没办法真正的降下来.
不过我相信如果软件的性能不大会受到多几个或者少几个button的影响.
如果真的那么追求性能,你可以考虑用html来写界面,在WebBrowser里面展现.
dvdvip 2009-03-05
  • 打赏
  • 举报
回复
每增加一个控件,就会严重地增加软件的负担,影响性能。
dvdvip 2009-03-05
  • 打赏
  • 举报
回复
就会严重地增加软件的负担,影响性能。



少打几个字了。不好意思。
Dobzhansky 2009-03-05
  • 打赏
  • 举报
回复
[Quote=引用楼主 dvdvip 的帖子:]
就会严重地增加软件的性能
[/Quote]
up
完美的利用了浏览器的XML解析技术,完全实现数据和界面的分离,使网络传输数据量大大减少,加载速度远远超过了市面上所有的BLOG产品,有效的减轻了服务器的带宽压力,服务器端使用四大动态网站开发语言中速度最快的ASP.NET(C#)编写,屏弃了传统的控件开发方式,所有执行过程采用单向流的生成方式,使其对服务器CPU内存资源的占用降至最低水平,并通过gzip压缩进一步缩减服务器的网络带宽消耗,提高响应速度 。
无Session设计杜绝了用户会话无故丢失的尴尬,客户端关联的会话加密方式带来了用户数据的高安全性,独特的XSL结构设计,彻底消除了跨站脚本攻击的隐患,杜绝恶意代码的执行,同时保证了文章内容的完整性。
DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用——AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。
简洁的主题与皮肤开发技术,更合理的模块化设计,大大减轻了后续开发的难度,使模板开发变得轻而易举。
自主研发的中文分词技术,速度超过3MB/s,准确率达到90%以上,大大超过网上各种开源中文分词技术,几乎可以和中科院的ICTCLAS相媲美,结合当前最成熟的Lunece的.net版本,实现了功能强大执行快速的全文检索引擎。
实现了对OPERA浏览器的兼容性
实现多文件同时上传
取消了页面上的SELECT控件使用模拟下拉列表
X3BLOG 单用户版继承多用户版的高效率的特点,即时虚拟主机也能够轻松运行。
内部实现了URL重写,可以在任何.net空间运行。
支持虚拟目录。
兼容性
Mozilla Firefox v1.5.0.0 以上版本
Microsoft Internet Explorer v6.0 以上版本

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧