github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/pkg/logger/writer.go (about) 1 package logger 2 3 import ( 4 "io" 5 "sync" 6 ) 7 8 type MutexWriter struct { 9 underlying io.Writer 10 mu *sync.Mutex 11 } 12 13 func NewMutexWriter(underlying io.Writer) MutexWriter { 14 return MutexWriter{ 15 underlying: underlying, 16 mu: &sync.Mutex{}, 17 } 18 } 19 20 func (w MutexWriter) Write(b []byte) (int, error) { 21 w.mu.Lock() 22 defer w.mu.Unlock() 23 return w.underlying.Write(b) 24 }