class SemanticLogger::Appender::Async

def reopen

Re-open appender after a fork
def reopen
  # Workaround CRuby crash on fork by recreating queue on reopen
  #   https://github.com/reidmorrison/semantic_logger/issues/103
  @queue&.close
  create_queue
  appender.reopen if appender.respond_to?(:reopen)
  @thread&.kill if @thread&.alive?
  @thread = Thread.new { process }
end