class Sass::Embedded::Channel

{Compiler} runs out of unique request id.
{Compiler}. A new {Compiler} is automatically created when the existing
The {Channel} for {Compiler} calls. Each instance creates its own

def close

def close
  @mutex.synchronize do
    @compiler.close
  end
end

def closed?

def closed?
  @mutex.synchronize do
    @compiler.closed?
  end
end

def initialize

def initialize
  @mutex = Mutex.new
  @compiler = Compiler.new
end

def subscribe(observer)

def subscribe(observer)
  @mutex.synchronize do
    begin
      id = @compiler.add_observer(observer)
    rescue ProtocolError
      @compiler = Compiler.new
      id = @compiler.add_observer(observer)
    end
    Subscription.new @compiler, observer, id
  end
end