ditch sync.Cond-based QueuingWriter
use CountingSemaphore in UnsafeWriter