| Class | SingleThreadedPool | 
| In: | lib/assistance/connection_pool.rb | 
| Parent: | Object | 
A SingleThreadedPool acts as a replacement for a ConnectionPool for use in single-threaded applications. ConnectionPool imposes a substantial performance penalty, so SingleThreadedPool is used to gain some speed.
| conn | [R] | |
| connection_proc | [W] | 
Initializes the instance with the supplied block as the connection_proc.
     # File lib/assistance/connection_pool.rb, line 130
130:   def initialize(&block)
131:     @connection_proc = block
132:   end
          Yields the connection to the supplied block. This method simulates the ConnectionPool#hold API.
     # File lib/assistance/connection_pool.rb, line 136
136:   def hold
137:     @conn ||= @connection_proc.call
138:     yield @conn
139:   rescue Exception => e
140:     # if the error is not a StandardError it is converted into RuntimeError.
141:     raise e.is_a?(StandardError) ? e : e.message
142:   end