Type:
Class

Threadsafe, fair, FIFO queue. Meant to be used by ConnectionPool with which it shares a Monitor. But could be a generic Queue.

The Queue in stdlib's 'thread' could replace this class except stdlib's doesn't support waiting with a timeout.

add
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

add(element) Instance Public methods Add element to the queue.

2025-01-10 15:47:30
poll
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

poll(timeout = nil) Instance Public methods Remove the head of the queue.

2025-01-10 15:47:30
new
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

new(lock = Monitor.new) Class Public methods

2025-01-10 15:47:30
clear
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

clear() Instance Public methods Remove all elements from the queue.

2025-01-10 15:47:30
any_waiting?
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

any_waiting?() Instance Public methods Test if any threads are currently waiting

2025-01-10 15:47:30
num_waiting
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

num_waiting() Instance Public methods Returns the number of threads currently

2025-01-10 15:47:30
delete
  • References/Ruby on Rails/Rails/Classes/ActiveRecord/ActiveRecord::ConnectionAdapters/ActiveRecord::ConnectionAdapters::ConnectionPool/ActiveRecord::ConnectionAdapters::ConnectionPool::Queue

delete(element) Instance Public methods If element is in the queue

2025-01-10 15:47:30