<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>new (ActiveRecord::ConnectionAdapters::ConnectionPool)</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" /> </head> <body class="standalone-code"> <pre><span class="ruby-comment cmt"># File lib/active_record/connection_adapters/abstract/connection_pool.rb, line 66</span> <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">spec</span>) <span class="ruby-ivar">@spec</span> = <span class="ruby-identifier">spec</span> <span class="ruby-comment cmt"># The cache of reserved connections mapped to threads</span> <span class="ruby-ivar">@reserved_connections</span> = {} <span class="ruby-comment cmt"># The mutex used to synchronize pool access</span> <span class="ruby-ivar">@connection_mutex</span> = <span class="ruby-constant">Monitor</span>.<span class="ruby-identifier">new</span> <span class="ruby-ivar">@queue</span> = <span class="ruby-ivar">@connection_mutex</span>.<span class="ruby-identifier">new_cond</span> <span class="ruby-comment cmt"># default 5 second timeout unless on ruby 1.9</span> <span class="ruby-ivar">@timeout</span> = <span class="ruby-keyword kw">if</span> <span class="ruby-constant">RUBY_VERSION</span> <span class="ruby-operator"><</span> <span class="ruby-value str">'1.9'</span> <span class="ruby-identifier">spec</span>.<span class="ruby-identifier">config</span>[<span class="ruby-identifier">:wait_timeout</span>] <span class="ruby-operator">||</span> <span class="ruby-value">5</span> <span class="ruby-keyword kw">end</span> <span class="ruby-comment cmt"># default max pool size to 5</span> <span class="ruby-ivar">@size</span> = (<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">config</span>[<span class="ruby-identifier">:pool</span>] <span class="ruby-operator">&&</span> <span class="ruby-identifier">spec</span>.<span class="ruby-identifier">config</span>[<span class="ruby-identifier">:pool</span>].<span class="ruby-identifier">to_i</span>) <span class="ruby-operator">||</span> <span class="ruby-value">5</span> <span class="ruby-ivar">@connections</span> = [] <span class="ruby-ivar">@checked_out</span> = [] <span class="ruby-keyword kw">end</span></pre> </body> </html>