Server IP : 66.29.132.122 / Your IP : 18.226.214.95 Web Server : LiteSpeed System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : admazpex ( 531) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/thread-self/root/proc/thread-self/root/opt/alt/ruby33/share/rubygems/rubygems/request/ |
Upload File : |
# frozen_string_literal: true ## # A connection "pool" that only manages one connection for now. Provides # thread safe `checkout` and `checkin` methods. The pool consists of one # connection that corresponds to `http_args`. This class is private, do not # use it. class Gem::Request::HTTPPool # :nodoc: attr_reader :cert_files, :proxy_uri def initialize(http_args, cert_files, proxy_uri) @http_args = http_args @cert_files = cert_files @proxy_uri = proxy_uri @queue = Thread::SizedQueue.new 1 @queue << nil end def checkout @queue.pop || make_connection end def checkin(connection) @queue.push connection end def close_all until @queue.empty? if (connection = @queue.pop(true)) && connection.started? connection.finish end end @queue.push(nil) end private def make_connection setup_connection Gem::Request::ConnectionPools.client.new(*@http_args) end def setup_connection(connection) connection.start connection end end