当前位置:  开发笔记 > 后端 > 正文

是不是现代计算机足以处理字符串而不需要使用符号(在Ruby中)

如何解决《是不是现代计算机足以处理字符串而不需要使用符号(在Ruby中)》经验,为你挑选了2个好方法。

我读过的关于Ruby符号的每一篇文章都谈到了符号在字符串上的效率.但是,这不是20世纪70年代.我的电脑可以处理一些额外的垃圾收集.我错了吗?我有最新最好的奔腾双核处理器和4演出的RAM.我认为这应该足以处理一些字符串.



1> Colen..:

你的计算机很可能能够处理"一点点额外的垃圾收集",但是那个"一点点"发生在一个运行数百万次的内循环中呢?什么时候它在内存有限的嵌入式系统上运行?

有很多地方你可以随便使用字符串,但在某些地方你不能.这一切都取决于具体情况.



2> danieltalsky..:

确实,出于记忆原因,你不需要令牌非常糟糕.您的计算机无疑可以处理各种粗糙的字符串处理.

但是,除了速度更快之外,令牌还具有额外的优势(特别是使用上下文着色)在视觉上尖叫:看看我,我是一个关键值对的关键.这是一个足够的理由将它用于我.

还有其他原因......而且很多它们的性能提升可能比你意识到的要多,特别是做比较之类的事情.

比较两个ruby符号时,解释器只是比较两个对象地址.比较两个字符串时,解释器必须一次比较一个字符.如果你做了很多这样的计算,这种计算可以加起来.

虽然符号有自己的性能问题......它们从不被垃圾收集.

值得一读这篇文章:http: //www.randomhacks.net/articles/2007/01/20/13-ways-of-looking-at-a-ruby-symbol

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有