File: C:/Ruby27-x64/share/ri/2.7.0/system/Bundler/ConnectionPool/cdesc-ConnectionPool.ri
U:RDoc::NormalClass[iI"ConnectionPool:ETI"Bundler::ConnectionPool;TI"Object;To:RDoc::Markup::Document:@parts[o;;[o:RDoc::Markup::Paragraph;[I"\Generic connection pool class for e.g. sharing a limited number of network connections ;TI"?among many threads. Note: Connections are lazily created.;To:RDoc::Markup::BlankLine o; ;[I"'Example usage with block (faster):;T@o:RDoc::Markup::Verbatim;[
I"7@pool = Bundler::ConnectionPool.new { Redis.new }
;TI"
;TI"@pool.with do |redis|
;TI": redis.lpop('my-list') if redis.llen('my-list') > 0
;TI" end
;T:@format0o; ;[I"AUsing optional timeout override (for that single invocation);T@o;;[I")@pool.with(timeout: 2.0) do |redis|
;TI": redis.lpop('my-list') if redis.llen('my-list') > 0
;TI" end
;T;0o; ;[I"=Example usage replacing an existing connection (slower):;T@o;;[
I"9$redis = Bundler::ConnectionPool.wrap { Redis.new }
;TI"
;TI"def do_work
;TI"< $redis.lpop('my-list') if $redis.llen('my-list') > 0
;TI" end
;T;0o; ;[I"#Accepts the following options:;To:RDoc::Markup::List:
@type:BULLET:@items[o:RDoc::Markup::ListItem:@label0;[o; ;[I"9:size - number of connections to pool, defaults to 5;To;;0;[o; ;[I"j:timeout - amount of time to wait for a connection if none currently available, defaults to 5 seconds;T:
@fileI">lib/bundler/vendor/connection_pool/lib/connection_pool.rb;T:0@omit_headings_from_table_of_contents_below0o;;[ ;I"Mlib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb;T;0o;;[ ;I"Flib/bundler/vendor/connection_pool/lib/connection_pool/version.rb;T;0;0;0[ [U:RDoc::Constant[i I"
DEFAULTS;TI"&Bundler::ConnectionPool::DEFAULTS;T:public0o;;[ ;@>;0@>@cRDoc::NormalClass0U;[i I"GLOBAL_MONOTONIC_CLOCK;TI"4Bundler::ConnectionPool::GLOBAL_MONOTONIC_CLOCK;T:private0o;;[o; ;[I"BClock that cannot be set and represents monotonic time since ;TI"%some unspecified starting point.;T@o; ;[I"@!visibility private;T;@A;0@A@@M0U;[i I"VERSION;TI"%Bundler::ConnectionPool::VERSION;T;0o;;[ ;@D;0@D@@M0[ [[I"
class;T[[;[[I"monotonic_time;TI"[../ruby-2.7.7/lib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb;T[I"new;TI"L../ruby-2.7.7/lib/bundler/vendor/connection_pool/lib/connection_pool.rb;T[I" wrap;T@m[:protected[ [;[ [I"
instance;T[[;[[I"available;T@m[I"checkin;T@m[I"
checkout;T@m[I"
get_time;T@j[I"
shutdown;T@m[I" size;T@m[I" with;T@m[;[ [;[ [ [U:RDoc::Context::Section[i 0o;;[ ;0;0[
I">lib/bundler/vendor/connection_pool/lib/connection_pool.rb;TI"Mlib/bundler/vendor/connection_pool/lib/connection_pool/monotonic_time.rb;TI"Jlib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb;TI"Flib/bundler/vendor/connection_pool/lib/connection_pool/version.rb;TI"Klib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb;T@DcRDoc::TopLevel