Project1

标题: 我说为什么在Ace的窗口过程里执行eval这么慢呢 [打印本页]

作者: Shy07    时间: 2013-1-16 03:40
标题: 我说为什么在Ace的窗口过程里执行eval这么慢呢
When benchmarking basic requests with a minimalistic schema (only one int column), even though YARV serviced requests 15% faster, it took much longer to load the environment (50% slower). This comes as no surprise since plain old (evil) eval is slower in YARV(...)In fact, the mere fact of requiring active_record (and indirectly ActiveSupport) causes a sharp decrease in performance.


eigenclass.org的测试结果,在YARV上执行的RoR比在1.8.6上执行要快15%,但是启动时加载环境慢了50%(记得以前在哪里看过,说Ruby每次eval都要修改环境)
So,在窗口过程里用eval获取窗口消息这种方法在Ace里会变得奇慢(限制一下CPU掉帧会变得非常明显)

@灼眼的夏娜 @七夕小雨 @晴兰 @yangff  
作者: 灼眼的夏娜    时间: 2013-1-16 08:58
消息太多(
作者: Shy07    时间: 2013-1-16 14:38
灼眼的夏娜 发表于 2013-1-16 08:58
消息太多(

精简过好多次了,最后只是单纯赋值操作还是能感觉到卡:(
作者: yangff    时间: 2013-1-16 16:13
本帖最后由 yangff 于 2013-1-16 16:16 编辑

用rb_eval啥的呢。。
或者这样用吧。。https://github.com/project7/Project7
作者: 晴兰    时间: 2013-5-23 14:58
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1