Faraday をリクエスト クライアントとして使用し、次のように EM 同期で使用する事前定義されたアダプターを持つ ROR プロジェクトをリファクタリングしています。
def which_faraday_adapter?
if Utils::ModuleLoaded.synchrony? && Utils::ModuleLoaded.fiberpool?
:em_synchrony
else
:net_http
end
end
module ModuleLoaded
def self.synchrony?
defined?(EM::Synchrony) && EM.reactor_running?
end
def self.fiberpool?
CfConsole::Application.config.middleware.middlewares.include?(Rack::FiberPool)
end
end
config/application.rb で FiberPool を有効にできることはわかっていますが、EM.synchrony を有効にするにはどうすればよいですか?
私は EM の基本的な知識を持つ Ruby の初心者ですが、次の意味についてはまだよくわかりません。
defined?(EM::Synchrony) && EM.reactor_running?
したがって、説明とサンプルは本当にありがたいです。