Sha256: cc7e031269156b79edd3d01fb74fa54c547f6bc7049488ee5b2dbe90ea326a29

Contents?: true

Size: 291 Bytes

Versions: 5

Compression:

Stored size: 291 Bytes

Contents

require "thread"

module Errplane
  class MaxQueue < Queue
    attr_reader :max

    def initialize(max = 10_000)
      raise ArgumentError, "queue size must be positive" unless max > 0
      @max = max
      super()
    end

    def push(obj)
      super if length < @max
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
errplane-0.5.21 lib/errplane/max_queue.rb
errplane-0.5.20 lib/errplane/max_queue.rb
errplane-0.5.19 lib/errplane/max_queue.rb
errplane-0.5.18 lib/errplane/max_queue.rb
errplane-0.5.17 lib/errplane/max_queue.rb