gpt4 book ai didi

ruby - 不需要 require(s) 问题吗?

转载 作者:数据小太阳 更新时间:2023-10-29 07:57:01 25 4
gpt4 key购买 nike

我希望能够有一个 ruby​​ 文件可以require 所有常见的依赖关系,这样其他文件就可以在这个共享文件上只有一个 require。for例子;我有 foo.rbbar.rb 以及 allrequires.rb。我想在 foo.rbbar.rb 中都有 require "allrequires.rb" 行,但是 bar.rb 不需要所有要求。

如果我在 .rb 文件中使用 require 并不真正需要该文件,这有什么关系吗?它可能会对性能产生影响吗?

我目前使用的是 ruby 1.8.7 (2010-08-16 patchlevel 302) [i386-mingw32]

更新

看起来在两个 .rb 文件中“共享”/使用所有要求并不是最好的主意。有什么解决方案?

现在我可以想到在条件中使用文件名。

最佳答案

有两个主要的性能损失:

  1. 执行要求 本身所花费的时间。在 Ruby 1.9.1 和 Ruby 1.9.2 中,执行所有 require 所花费的时间比线性可伸缩性更差——如果你将 require 的数量加倍,它花了你两倍多的时间 - 我想你花了四倍的时间。
  2. 执行require文件中的代码所花费的时间。如果您有如下代码,那么执行代码将花费大量时间。
class MyClass
MY_CONSTANT = File.read("data.txt")
end

关于ruby - 不需要 require(s) 问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10609823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com