class TsdMetrics::AsyncQueueWriter

Not threadsafe

Public Class Methods

new(queue, logger) click to toggle source
# File lib/tsd_metrics/async_queue_writer.rb, line 18
def initialize(queue, logger)
  @queue = queue
  @logger = logger
end

Public Instance Methods

start() click to toggle source
# File lib/tsd_metrics/async_queue_writer.rb, line 23
def start
  Thread.new do
    while true
      tryPopQueueToFile
    end
  end
end

Private Instance Methods

tryPopQueueToFile() click to toggle source
# File lib/tsd_metrics/async_queue_writer.rb, line 33
def tryPopQueueToFile
  line = @queue.pop
  return if line == nil
  @logger << line
  @logger << "\n"
end