gpt4 book ai didi

ruby-on-rails - 这个 ruby​​ on rails 代码线程安全吗?

转载 作者:数据小太阳 更新时间:2023-10-29 08:32:43 29 4
gpt4 key购买 nike

我在 JRuby on Rails 应用程序中遇到 Logger 问题。一个线程将日志级别更改为错误并且不会改回。这段代码是线程安全的,还是我应该寻找它发生的其他地方?

https://github.com/rails/rails/blob/master/activesupport/lib/active_support/benchmarkable.rb#L50

def silence
message = "ActiveSupport::Benchmarkable#silence is deprecated. It will be removed from Rails 4.1."
ActiveSupport::Deprecation.warn message
old_logger_level, logger.level = logger.level, ::Logger::ERROR if logger
yield
ensure
logger.level = old_logger_level if logger
end

最佳答案

好的,看起来在第一个线程中的 yield 期间,其他线程将执行 silence 它会将 logger.level 设置为 ERROR,因此如果其他线程将在第一个线程之后结束,它会将级别永久设置为 ERROR

关于ruby-on-rails - 这个 ruby​​ on rails 代码线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16082329/

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