method
with_a_bias_for
v5.0.0.1 -
Show latest stable
- Class:
ActiveRecord::ConnectionAdapters::ConnectionPool::BiasableQueue
with_a_bias_for(thread)public
No documentation available.
# File activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb, line 252
def with_a_bias_for(thread)
previous_cond = nil
new_cond = nil
synchronize do
previous_cond = @cond
@cond = new_cond = BiasedConditionVariable.new(@lock, @cond, thread)
end
yield
ensure
synchronize do
@cond = previous_cond if previous_cond
new_cond.broadcast_on_biased if new_cond # wake up any remaining sleepers
end
end