代码之家  ›  专栏  ›  技术社区  ›  Hank Gay

使用config.threadsafe时,从lib/加载模块/类的正确方法是什么!选择?

  •  5
  • Hank Gay  · 技术社区  · 16 年前

    我一直在努力让我们的Rails2.3.8应用程序在JRuby下正确运行。在我启用之前一切都很好 为了实现JRuby提供的并发性。这导致模块和类 库/

    使用config.threadsafe!启用:

    $ ruby script/runner -e production 'p Sim::Sim200Provisioner'
    
    /Users/amchale/.rvm/gems/jruby-1.5.1@web-services/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:105:in `const_missing': uninitialized constant Sim::Sim200Provisioner (NameError)
        from (eval):1
    

    $ ruby script/runner -e production 'p Sim::Sim200Provisioner'
    Sim::Sim200Provisioner
    

    有问题的文件是 lib/sim/sim200\u provisioner.rb 哪里 Sim卡 . Rails通常在查找和加载文件时没有问题。

    我是否需要手动要求所有的lib,或者是否有一种更像Rails的方式来处理我所缺少的lib?

    3 回复  |  直到 16 年前
        1
  •  7
  •   molf    16 年前

    这个 documentation 属于 threadsafe!

    相反,您应该手动 require 你需要的所有文件 initializer .

        3
  •  0
  •   kares    15 年前

    启用线程模式。允许 对控制器的并发请求 连接。同时禁用自动 启动后的依赖项加载,以及 请求,因为这些