add_easy_request(easy_object)
click to toggle source
def self.add_easy_request(easy_object)
Thread.current[:curl_multi] ||= Typhoeus::Multi.new
Thread.current[:curl_multi].add(easy_object)
end
easy_object_pool()
click to toggle source
def self.easy_object_pool
@easy_objects ||= []
end
get_easy_object()
click to toggle source
def self.get_easy_object
if easy_object_pool.empty?
Typhoeus::Easy.new
else
easy_object_pool.pop
end
end
included(base)
click to toggle source
def self.included(base)
base.extend ClassMethods
end
init_easy_object_pool()
click to toggle source
def self.init_easy_object_pool
20.times do
easy_object_pool << Typhoeus::Easy.new
end
end
release_easy_object(easy)
click to toggle source
def self.release_easy_object(easy)
easy.reset
easy_object_pool << easy
end