Class: AdvancedConnection::ActiveRecordExt::ConnectionPool::Queues::AgeSorted

Inherits:
Default
  • Object
show all
Defined in:
lib/advanced_connection/active_record_ext/connection_pool/queues.rb

Direct Known Subclasses

OldAgeBiased, YoungAgeBiased

Instance Method Summary collapse

Methods inherited from Default

#size

Instance Method Details

#poll(timeout = nil) ⇒ Object



39
40
41
42
43
44
45
# File 'lib/advanced_connection/active_record_ext/connection_pool/queues.rb', line 39

def poll(timeout = nil)
  synchronize do
    # always sort age based queues from youngest to oldest
    @queue.sort_by!(&:instance_age)
    no_wait_poll || (timeout && wait_poll(timeout))
  end
end