Ruby gem 加载一次,就预编译一下,下次就快了

sevk · 2014年01月16日 · 最后由 sevk 回复于 2014年01月17日 · 3180 次阅读

如果 ruby 对 gem 的加载机制,加载一次,就预编译一下,下次加载不直接解释代码, 加载效率会更高吧? 不是很懂

源代码是最佳的 wire format 会有很复杂的缓存问题 (参考 .pyc), 也会有字节码的校验问题 (参考 java class), 大概没多大作用...

#1 楼 @luikore 不是说 1.9 以后,ruby 代码会被编译成字节码,由 YARV 执行吗?

#2 楼 @zhangyuan 是的。但编译和 编译 不是一回事啊...

#3 楼 @luikore 默默地去 Google 预编译...

#4 楼 @zhangyuan 编译和预编译的关系,就差不多相当于 即时编译和编译的关系...

#1 楼 @luikore Python Parser 结构这么简单都存字节码了,Ruby 这么复杂反而不存了 ..

#6 楼 @bhuztez pyc 作用好小,麻烦好多... yarv 最初就是可以生成一个 .yarv 文件的,后来移除了

#7 楼 @luikore 有好处啊,可以丢个 pyc 在那里冒充 python 模块 ...

#8 楼 @bhuztez 然后就留坑了...

#9 楼 @krazy 不坑啊,为了把别的语言编译成 Python 模块 ...

嗯学习了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号